On 27. Feb 2012, at 18:54, jtyynela [via Software] wrote: > Example config file I used ( omitting multiple pipes) is 3-window.curved.eqc. > Everything works nicely, but hpr for channel-left and channel-right does not > work. > > I changed bit of eqOgre code and assumption that to get that orientated > frustum I have to call getHeadTransform. This seems to be the right way go > because I get cameras pointed towards center, but I lose my ability to rotate > camera.
A lot of software is confusing camera concepts. In OpenGL you have the projection and modelview matrix. The projection matrix is the frustum. Unfortunately the modelview in OpenGL are two matrices, model and view, munched together. The view matrix positiones the frustum (Eq's getHeadTransform) and model matrix positions the model, aka. the global camera. Desktop software does often not separate this since the view matrix is identity for 'standard' x/y oriented projections. Oftentimes you have to maintain a global model matrix in the frame or view data, and then use a per-renderer local matrix multiplying Eq's head transform with your global matrix. osgScaleViewer::Channel::frameDraw does this, for example. I don't have the insight nor time to dig out how that works in Ogre3D, but maybe I did point you in the right direction. HTH, Stefan. -- View this message in context: http://software.1713.n2.nabble.com/eqOgre-wall-defined-by-projection-how-to-get-orientation-from-hpr-tp7322588p7323015.html Sent from the Equalizer - Parallel Rendering mailing list archive at Nabble.com. _______________________________________________ eq-dev mailing list [email protected] http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev http://www.equalizergraphics.com

