#1
|
|||
|
|||
Spawn Avatar in front of User
Hi folks,
I have been trying to spawn an avatar model a few feet in front of the main view. I can get it to spawn at the location of the main view but not in front. I can offset the spawn location but not in relation to the viewpoint. Any help would be much appreciated. Code:
def AddBot(): x,y,z,d = viz.MainView.getAxisAngle() a,b,c = viz.MainView.getPosition() modelfile = randint(1,3) dudestate = randint(1, 14) if modelfile == 1: dude = viz.add('vcc_male.cfg') elif modelfile == 2: dude = viz.add('vcc_male2.cfg') elif modelfile == 3: dude = viz.add('vcc_female.cfg') dude.state(dudestate) dude.setPosition(a + 5,b,c, viz.REL_LOCAL) dude.setAxisAngle(0,y,0,d) ColShape = Cloud.collideMesh() dude.collideCapsule() vizact.onbuttondown(button_addbot, AddBot) |
#2
|
|||
|
|||
Here's an example, navigate around and you'll see a pigeon appear in front of the view every two seconds:
Code:
import viz import vizact viz.go() viz.addChild('piazza.osgb') avatar = viz.addAvatar('pigeon.cfg',pos=[0,0,6],euler=[180,0,0],scale=[4,4,4]) avatar.state(1) def spawnAvatar(): pos = viz.MainView.getPosition() yaw = viz.MainView.getEuler()[0] vector = viz.MainView.getMatrix().getForward() amount = 5 x,y,z = vizmat.MoveAlongVector(pos,vector,amount) a = avatar.clone(pos=[x,0,z],euler=[yaw-180,0,0],scale=[4,4,4]) vizact.ontimer(2,spawnAvatar) Last edited by Jeff; 02-25-2016 at 06:18 AM. |
#3
|
|||
|
|||
Thank you,
This worked like a charm. |
#4
|
|||
|
|||
You can use the player.transform.forward direction to get the players direction as a vector and transform.rotation to get the orientation. You can also do math operations of vectors which makes things so much better than modifying the components.
|
Tags |
avatar, position, relative, viewpoint |
Thread Tools | |
Display Modes | Rate This Thread |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Unexpected Avatar lookAt() behavior when using yield statements | chris2307 | Vizard | 2 | 12-17-2013 03:58 AM |
Avatar eye contact with user as it moves | Ducky | Vizard | 1 | 03-01-2013 01:23 PM |
How to make avatar always in front of youself (e.g. 20cm) when direction changes | Xianshi Xie | Vizard | 2 | 06-30-2009 12:13 PM |
Has user perception of avatar expressions been tested? | Karla | Vizard | 3 | 10-28-2008 11:32 AM |