#1
|
|||
|
|||
problem with yield statement and animation path
Hello!
I have an animation that goes through a maze in a loop (4 times). I also have a yield statement that waits for an arrow key (see code below in red) but whenever I have it inside the function, it offsets everything, the animation seems to play twice before waiting for the arrow key and then it offsets all coordinates. Why does that happen? Code:
import viz import viztask viz.clearcolor(viz.BLACK) viz.go() #Set the start position: startPos = [-6.4,1.4,-8] ### Add all the resources. ############### maze1 = viz.add('Objects/Maze_1.dae') maze1.visible(viz.OFF) view = viz.MainView view.eyeheight(1.4) view.setPosition(startPos) view.collision(viz.ON) viz.collisionbuffer(.8) ##Animation path pathMaze1 = viz.addAnimationPath() #Add control points to the path, along with their time stamp. pathMaze1.addControlPoint(2, pos=startPos,euler=(0,0,0),scale=(2,2,2)) pathMaze1.addControlPoint(4, pos=startPos,euler=(90,0,0),scale=(2,2,2)) pathMaze1.addControlPoint(6, pos=(0,1.4,-8),euler=(0,0,0),scale=(2,2,2)) pathMaze1.addControlPoint(8, pos=(0,1.4,5),euler=(0,0,0),scale=(2,2,2)) #Duation of animation pathMaze1Duration = pathMaze1.getDuration() def animation(): link = viz.link(pathMaze1,view) pathMaze1.play() yield viztask.waitTime(pathMaze1Duration) pathMaze1.reset() def maze1trial(): print 'now' view.setPosition(startPos) maze1.visible(viz.ON) yield animation() #yield viztask.waitKeyDown([viz.KEY_LEFT,viz.KEY_RIGHT]) maze1.visible(viz.OFF) def masterFunction(): for x in range(4): yield maze1trial() viztask.schedule(masterFunction()) |
Tags |
animation path |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
animation path problem - coordinates not resetting | jelly | Vizard | 7 | 04-26-2016 10:45 AM |