Hi,

have a look at the osgstereomatch example, there is a multi-pass algo example. See the readme of that too.

Also search the list archives for osgPPU.

jp

Thrall, Bryan wrote:
I'm attempting to implement a multiple pass rendering algorithm in OSG,
but I'm not sure what the best way is. I am just learning how to do this
and how to use Frame Buffer Objects. I initially tried to implement an
osgFX::Effect, since it supports multiple passes transparently. The
problem is how to pass the data between the passes.

The algorithm is to render the model to a texture, then process that
texture over 3 passes and composite it back into the scene. I used the
osgprerender example to do the first part using
osg::Camera::FRAME_BUFFER_OBJECT without problems. I then tried to use
osg::FrameBufferObject to pass the data from the first processing pass
to the second, but it doesn't work. It looks, from
osgUtil::RenderStage's Camera support, like osg::FrameBufferObject can't
be used simply by adding it to a StateSet, but it needs
glCheckFrameBufferStatusEXT after the apply(). Is this a limitation of
osg::FrameBufferObject, or am I missing something?

My current attempt is to use nested osg::Cameras with
osg::Camera::POST_RENDER for each pass, like so (hoping the ASCII art
turns out...):

Root
|->Camera(PRE_RENDER)
||->Model
|->Camera(POST_RENDER)
||->Pass 1 quad
||->Camera(POST_RENDER)
|||->Pass 2 quad
|||->Camera(POST_RENDER)
||||->Pass 3 quad
||||->Camera(POST_RENDER)
|||||->Final pass quad

At each pass, the texture target from the Camera's FBO is used to
texture the quad for the next pass (with shaders attached to the next
pass's StateSet to do the processing).

Is this a recommended approach? Are there any requirements on the
Cameras (Transform values, ABSOLUTE_RF, etc.) I should be configuring?

Thanks,
--
Bryan Thrall
FlightSafety International
[EMAIL PROTECTED]
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


--
This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html.

This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. MailScanner thanks Transtec Computers for their support.

_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to