![]() |
|
#1
|
|||
|
|||
|
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 |