PDA

View Full Version : moving viewpoint vs. translating Head_pos


bailenson
09-06-2004, 02:20 PM
Hello, what exactly is the difference between moving the Head_position using the viewpoint command:

view.move

and moving it by the translate command

viz.translate(viz.HEAD_POS)?

Do they do the exact same thing?

Thanks,

Jeremy

mspusch
09-07-2004, 09:34 AM
Hi Jeremy,

viz.translate(viz.HEAD_POS) is mostly there for backwards compatibility. It will translate the head position relatively to the current position.

viewpoint.translate will translate the head position either absolutely or relatively, depending on the optional fourth parameter. (The default is absolute)

viewpoint.move will translate the head position relative to the current orientation. So the following will move the viewpoint forward by 1 meter, no matter what the orientation is:viewpoint.move(0,0,1)Hope that clears it up

JRichizzle
02-01-2005, 12:52 PM
Which method of creating a motion simulation through an environment is more difficult to render? For instance, to create the illusion of moving down a hallway, I could:

1) Translate the hallway object (using object.translate or vizact.move) past a stationary viewpoint, or

2) Translate the viewpoint through a stationary hallway object.

Which is more efficient for real-time motion simulations? I have created motion simulations involving forward translation through a hallway with oscillatory roll rotations super-imposed. I translated the viewpoing using "viz.translate(viz.HEAD_POS)"... does this impose a great workload on the computer? Is rendering performance better when translating the object as opposed to the HEAD_POS?

-Jason

farshizzo
02-01-2005, 01:03 PM
Hi,

There is no difference between translating an object versus the viewpoint as far as the graphics card is concerned. The end result is the same. In general it is more intuitive to translate the viewpoint, even more so when rotations are involved.

JRichizzle
02-01-2005, 01:42 PM
Thanks...

What about using one method versus another?

E.g., viz.translate(viz.HEAD_POS) or view.move()

farshizzo
02-01-2005, 01:51 PM
Hi,

viz.translate(viz.HEAD_POS) is different from view.move(). The first will translate the viewpoint relative to the global reference frame. The latter will translate the viewpoint relative to the local reference frame. view.move() requires more calculations, however the difference should be negligible.