PDA

View Full Version : Vizard cluster with director calls


victorqx
07-25-2012, 02:59 AM
Hello,

Perhaps this question has already been answered, but I couldn't find it. If it has been answered before, could someone please point me in the right direction to find the answer?

As background, I'm running a powerwall with 6 screens and thus 6 rendering machines.

I want to be able to switch scenes in Vizard while a script is running. I'm creating thumbnails of different scenes and via a touchscreen like interface I want to allow a user to switch between these scenes. Since some of these scenes are quite big, it can take the cluster some 10-20 seconds to load them. In this time period I would like to display a 'loading...' message so the user knows that something is happening.

I created a fancy, animated loading message with spheres that change opacity. I tried to get Vizard to load the new scene in a background thread using the director, on my desktop this works fine. When switching to the cluster, the animation doesn't run.

Is it possible to run a background director call on a cluster?

Thanks in advance for any tips!

Regards,

Victor

PS Code for loading a scene:

scene = None

def loadSomeScene():
global scene

scene = viz.addSphere()

def loadScene2(loadFunc):
if not scene == None:
scene.remove()

LoadingAnimation.showLoadingSpheres()
yield viztask.waitDirector(loadFunc)
LoadingAnimation.removeLoadingSpheres()

def loadScene(loadFunc):
viztask.schedule(loadScene2(loadFunc))

vizact.onkeychar('1', loadScene, loadSomeScene)

farshizzo
08-03-2012, 04:42 PM
No, currently you cannot run background director calls within a cluster. The clients will just execute the calls in their main thread. We are working on adding a built-in option to load models asynchronously to a future version of Vizard, which would also work with cluster clients.

victorqx
08-06-2012, 12:24 AM
Hello farshizzo,

Thanks for your reply. It is unfortunate that director calls won't work in a cluster. I'm looking forward to a new version in which to load models asynchronously. For now, I'll make do with the UI freezing for a bit while models are loading :-)

Regards,

Victor