Hi,

> Is there a reason why you can't just use a osg::Camera that is drawn after 
> the main scene? 


I'm facing the same problem : in my OSG graph, I render data from physical 
simulations using a RTT camera and I need to postprocess the rendered texture 
before display it.

The problem is to easily execute different postprocess algorithms : they are 
not suitable for a simple render quad or a simple subgraph.

In some cases, I need to do sequencial multiple post processing, and between 
each step I have to readback some values to CPU, compute something on the CPU 
and feed the next shader with it.

It can be done with multiples Camera/CameraCallBack, but this is a lot of 
coding and complex scene graph.

Having a solution to manually execute a "draw" on a Camera using a specified 
state would be great (no Viewer involved). It allow to write this kind of stuff 
:


1/ Create different simple graph to compute each step, each graph is something 
like :

Camera (RTT)
   |
RenderQuad (with postprocessing shader)

2/ Add a PostDrawCallback to main Camera

3/ In this PostDrawCallback execute this :
  - subgraph_step_1->draw(pState);
  - readback / compute something
  - subgraph_step_2->draw(pState);
  - readback / compute something
  - subgraph_step_3->draw(pState);
  - readback / compute something


I think this should work only if subgraph cameras are RTT cameras. And maybe 
the rendering should be really simple : no event / update traversal, maybe not 
even culling, just draw all objects[/quote]

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=51198#51198





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

Reply via email to