![]() |
|
#1
|
|||
|
|||
Is the varable you are trying to call getAnimationID and getPosition a valid object? Perhaps you have not intialized the list properly? Try printing the varable before you use it. It should say something like VizAvatar instance.
Print like so: Code:
for avatar in peopleList: print avatar
__________________
Paul Elliott WorldViz LLC |
#2
|
|||
|
|||
thanks, for some reason
victims[nextvictim].get(viz.POSITION) works fine. Question: Do you have any idea why an avatar, after completing a walkto(x,y,z) would start performing another animation? the code is: actor.act(actor.walkto(-1, 0, 1.5,1.8,0,6)) actor.act(actor.walkto(-1, 0, 3,1.8,0,6)) actor.act(actor.turn(-110)) after each of those walkto's and during the turn, the avatar begins to bend down(which is one of the animations it has) for some milliseconds and then continue with the next action. it does the turn simultaneously with the bending down action although i never called it . I tried setting the state to idle, but that doesnt work... |
#3
|
|||
|
|||
By default, Vizard assumes the avatars idle animation is the first animation. Vizard will use the idle animation after performing walk actions and during the turn actions. The easiest solution would be to place your idle animation at the top of the animation list in your cfg file. Alternatively, you could set the idlepose of the avatar in your script:
Code:
avatar = viz.add('myavatar.cfg') avatar.idlepose = 4 #Use animation 4 as the idle pose Code:
actor.act(vizact.turn(-110,anim=5)) #Use animation 5 while turning |
#4
|
|||
|
|||
You can also avoid having the avatar's state set the the idle animation after each action by setting the idle animation to -1.
Code:
avatar.idlepose = -1
__________________
Paul Elliott WorldViz LLC |
![]() |
|
|