Hi, Craig
 
When you have nested cameras they work like nested render stages. All cameras under another camera node will render just before or just after (depending on render order set on camera) rendering parent camera. With that in mind you can build hierarchy that suits your purposes.
 
Example : camera1 <- camera2
 
 
 
02.05.2011, 16:17, "Craig S. Bosma" <[email protected]>:
Will the same technique work with a third camera C?

Sent from my iPhone

On Apr 28, 2011, at 11:06 AM, Sergey Polischuk <[email protected]> wrote:

 
Hi, Craig
In your example, put camera A as child of B with render order on camera A set to prerender.
 
Cheers, Sergey.
 
 
27.04.2011, 18:38, "Craig S. Bosma" <[email protected]>:
Robert,

Thanks for pointing out the "TraversalOrderBin", I wasn't aware of that. However, I'm still a little unclear on how that might help for my use. Suppose I have a scene with with a root Group node and two child Camera Nodes, A and B. Suppose both render to a texture via FBO, and that B needs A's texture output. If I put the root node in the "TraversalOrderBin", would that guarantee that camera A is rendered completely before camera B? What if A instead were a child of B?

Thanks,
Craig
 

On Tuesday, April 26, 2011 at 5:01 AM, Robert Osfield wrote:

Hi Craig,

The best way to manage render bin is vis State::setRenderBinDetails(),
and in the 2.9.x dev series you can now select a render bin that sorts
on traversal order of a subgrpah which makes some techniques easier -
use the RenderBin string "TraversalOrderBin" to select this bin.

If you want to create and chain RenderStages then using an osg::Camera
in the scene graph is often one of the best ways to do this, and use
the Camera::setRenderOrder(..) to control the order. You can also use
a custom cull traversal callback to create RenderStage/RenderBin and
assign these to the rendering backend, but this does require a greater
knowledge of the internals of the rendering backend.

Robert.

On Fri, Apr 22, 2011 at 9:52 PM, Craig S. Bosma <[email protected]> wrote:
Hi,
I'm working on a shader-driven graphics pipeline for an OSG-based app, and I
want to better understand how I can better control the rendering order. I
want to render my initial scene to several texture targets, with opaque and
transparent objects handled separately. Currently I do this using node
masks, but from this thread
(http://forum.openscenegraph.org/viewtopic.php?t=2374) it seems like it
would be better to use renderbin/renderstages. I have several more
post-processing stages to follow, so I'm convinced that's the way to go for
me to have full control over the pipeline.
I've dug into the source for SceneView, RenderBin, RenderStage, etc. but
it's not obvious to me how to shift objects from one bin to another (aside
from setRenderBinDetails), or how to add stages that form a dependency
chain. If anyone has examples or general advice on where to look, I'd be
glad to hear it.
Thanks,
Craig


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

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

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

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

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

Reply via email to