#1
|
|||
|
|||
PPT causing height problem
For some reason, whenever I have my PPT computer connected and active with my rendering computer, the default viewpoint becomes 2 or 3 times higher than a person should be. When I run the program without PPT going, the point of view spawns at a normal height. I'm wondering if it's a problem with my code (I got thrown headfirst into this level of programming)
Code:
import viz import math import vizmat import vizinfo import vizact from lookingat import LookingAt viz.go() #adds the ppt PORT_PPT = 1 ppt = viz.add('vizppt.dls') ppt.command(3,"",1,1,5) #scales ppt tracking on xyz axis #collisions on viz.collision(viz.ON) view = viz.get(viz.MAIN_VIEWPOINT) view.rotate(0,1,0,90) #gonna comment out the collision for now, it's registering when the avatar touches #ground as a collision #This function is called when a collision occurs def mycollision(info): print 'Collided' #Create a callback for a collision event viz.callback(viz.COLLISION_EVENT, mycollision) PORT_INTERSENSE = 2 isense = viz.add('intersense.dls') tracker = viz.add('intersense.dls') viz.tracker() tracker.reset() def mykeyboard(key): #If the R key is pressed, reset the head orientation if key in ['r','R']: tracker.reset() #Create a keyboard callback viz.callback(viz.KEYBOARD_EVENT,mykeyboard) #Add the street and drop it a little bit to be below the avatars feet. street = viz.add('objects/bspcity.bsp') street.translate(0,-.2,0) males = [] females = [] walking = [] whichturn = 0 #List the timers. WALKING = 0 BLINDWALK = 1 BLINDLOOK = 2 MALEMEETING = 3 FEMALEMEETING = 4 SITTINGWOMAN=5 FREEZESITTER=6 THROWINGMAN =7 HOLDVIEW = 8 TIMING = 9 #Add the heads for the males. maleheads = ['Male/heads/M-015-2L.vzf','Male/heads/M-056L.vzf', 'Male/heads/M-063L.vzf'] femaleheads = [] bodyparts = ['male_legs.cmx','male_torso_LS.cmx','male_shoes.cmx'] maleclothes = ['Male/clothes/male1.jpg','Male/clothes/male2.jpg','Male/clothes/male3.jpg'] #Make some avatars. for i in range(3): male = viz.add('male.cfg') male.translate(i,0,0) male.visible(0,'male_head.cmx') male.face(maleheads[i]) clothes = viz.add(maleclothes[i]) for j in bodyparts: male.texture(clothes,j) males.append(male) for i in range(3): female = viz.add('female.cfg') female.translate(i,0,0) females.append(female) #Set up paramters for walking guy. males[0].translate(0,0,-5) males[0].rotate(0,1,0,-90) males[0].whichturn = 0 males[0].set = [[1.5,0,-5],[1.5,0,15],[5,0,15],[-5,0,-5]] males[0].end = 4 walking.append(males[0]) #Set up paramters for walking girl. females[0].translate(1,0,-7) females[0].rotate(0,1,0,-90) females[0].whichturn = 0 females[0].set = [[1.5,0,0],[1,0,15],[2,0,15],[-5,0,-5]] females[0].end = 4 walking.append(females[0]) #Add car. #car = viz.add('objects/sport.wrl') #Set up for meeting. males[1].translate(-9,0,21) females[1].translate(2,0,7) females[1].state(1) malemoves = [2,2,4,4,2,4,4,4,4,4,4,2,2,12] femalemoves = [6,5,12,12,1] females[1].rotate(0,1,0,-55) males[1].rotate(0,1,0,135) males[1].state(1) #Set up for throwing man. males[2].translate(11,0,7) males[2].state(1) #Set up for timing. timebomb = 0 def onkeydown(key): if key == '0': viz.starttimer(WALKING, .1, viz.PERPETUAL) if key == '2': females[1].addAction(6) males[1].goto(1.6,0,7.7) females[1].spinto(0,1,0,-55) females[1].state(12) viz.starttimer(MALEMEETING,.1) viz.starttimer(FEMALEMEETING,.1) if key == '4': viz.starttimer(THROWINGMAN,.1) if key == 's': print 's' viz.starttimer(TIMING,1, viz.PERPETUAL) def ontimer(num): global gravity, timebomb if num == WALKING: for agent in walking: agentposition = agent.get(viz.POSITION) agentgap = vizmat.Distance(agentposition, agent.set[agent.whichturn]) if agentgap < .1: agent.whichturn += 1 if agent.whichturn == agent.end: agent.whichturn = 0 walk = vizact.walkto(agent.set[agent.whichturn][0],agent.set[agent.whichturn][1],agent.set[agent.whichturn][2]) agent.addAction(walk) if num == MALEMEETING: if len(malemoves)>1: animation = malemoves.pop(0) duration = males[1].getduration(animation) males[1].execute(animation) viz.starttimer(MALEMEETING, duration-.15) else: animation = malemoves.pop(0) males[1].state(animation) if num == FEMALEMEETING: if len(femalemoves)>1: animation = femalemoves.pop(0) duration = females[1].getduration(animation) females[1].execute(animation) viz.starttimer(FEMALEMEETING, duration-.15) else: animation = femalemoves.pop(0) females[1].state(animation) if num == THROWINGMAN: males[2].execute(9) males[2].execute(1) viz.starttimer(THROWINGMAN, 10) if num == HOLDVIEW: view.translate(-8.5,1.5,-2) if num == TIMING: print timebomb timebomb += 1 if timebomb == 1: onkeydown('0') elif timebomb == 3: onkeydown('4') elif timebomb == 10: onkeydown('2') elif timebomb == 20: onkeydown('3') elif timebomb == 30: onkeydown('1') elif timebomb == 80: viz.quit() viz.callback(viz.TIMER_EVENT,ontimer) viz.callback(viz.KEYDOWN_EVENT,onkeydown) viz.starttimer(HOLDVIEW,.001, viz.PERPETUAL) |
#2
|
|||
|
|||
Try adding the following line to your script:
Code:
viz.eyeheight(0) |
#3
|
|||
|
|||
Thanks, that fixed everything up for me.
And I found where the random extra avatar was coming from. |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
export problem | bazelaisr | Vizard | 2 | 05-28-2008 11:19 AM |
5DT Data Glove 5 Ultra Problem | bjgold | Vizard | 1 | 08-08-2006 05:08 PM |
problem with female animations | vmonkey | Vizard | 1 | 10-07-2005 11:36 AM |
sound problem | alaa | Vizard | 7 | 09-02-2005 02:13 PM |
PROBLEM: Picture-in-Picture breaks textures?!? | vcarlson | Vizard | 4 | 10-05-2004 05:22 PM |