View Single Post
Old 03-08-2010, 04:36 AM
4711 4711 is offline
Join Date: Jan 2010
Posts: 15
How to pause the Vizard simulation?

Hi guys,

I have a simple problem: I just want the whole Vizard simulation to pause for a few seconds, and afterwards continue from where it stopped right before. During that pause, no navigation through the simulation must be allowed (that is, MainView mustn't change).

So I tried:
import time
time.sleep( several seconds )
This in fact freezes the whole simulation for the stated amount of time, but meanwhile mouse input is still accepted, which is then executed right after waking from time.sleep(). That means, if the user continues moving the mouse during this pause, the whole input is recorded (instead of being ignored), and the corresponding movement just gets performed afterwards.

Of course this is not what I wanted, so I tried it another way:
viz.mouse( viz.OFF )
yield viztask.waitTime( several seconds )
viz.mouse( viz.ON )
This actually works fine (user cannot navigate and input is ignored), except one thing: The player keeps drifting through the environment - seemingly with the speed and direction of the last accepted input received before the mouse became switched off - until the viztask expires. So clearly that's useless for me, too.

Now I wonder if there is any passably simple solution for this problem?
Reply With Quote