[osg-users] z-up & camera position & osgthirdpersonview

Fabian Bützow buetz at uni-koblenz.de
Sat Sep 6 20:12:37 PDT 2008


Hi,
let me summarise my thoughts about the osg-opengl-coordinate system issue:
(and please comment on that)

Thinking in local coordinate systems, every geometry has its own coordinate system, 
starting in WCS (0,0,0). For each coordinate system is X east, Y north and Z up.
When you add transformation nodes into the scenegraph between root and geometry, 
each transformation adds up to a model matrix(top-down) that transforms the coordinate system.
(imagine: the geometry is drawn into that modified coordinate system)

After that, the view Matrix of the camera is applied. (camera coordinates are in osg Z-up)
Basically, that means that the local coordinates are transformed into the eye coordinates.

Still, z is up?!
(virtual camera is in origin, looking along positive y, right-hand-system)


I found this quote from Robert:
"Once the scene is transformed into eye space by the View matrix of the
Camera the coordinate system of the eye space is standard OpenGL, +ve
Y up the screen, +ve X to the right, +Z out from the screen."

And now im getting a little confused..
Now an addtional rotation (x, 90°) should be applied, 
to rotate the coordinate system from osg into X east, Y up, Z south.

That would mean camera still looks along positive y.?? 
that would be strange when it comes to the viewing volume and the perspective division..?
(Y non linear scaled??, something's wrong here..)

see, im confused ;)
im sure you can help me,

cheers
Fabian









More information about the osg-users mailing list