<div>
            <div>
                <span>Robert,</span></div><div><span><br></span></div><div><span>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?</span></div><div><span><br></span></div><div><span>Thanks,</span></div><div><span>Craig<br>
                </span>
                <span></span>
                
                <!-- <p style="color: #a0a0a0;">On Tuesday, April 26, 2011 at 5:01 AM, Robert Osfield wrote:</p> -->
                <p style="color: #a0a0a0;">On Tuesday, April 26, 2011 at 5:01 AM, Robert Osfield wrote:</p>
                <blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;">
                    <span><div><div>Hi Craig,<br><br>The best way to manage render bin is vis State::setRenderBinDetails(),<br>and in the 2.9.x dev series you can now select a render bin that sorts<br>on traversal order of a subgrpah which makes some techniques easier -<br>use the RenderBin string "TraversalOrderBin" to select this bin.<br><br>If you want to create and chain RenderStages then using an osg::Camera<br>in the scene graph is often one of the best ways to do this, and use<br>the Camera::setRenderOrder(..) to control the order.  You can also use<br>a custom cull traversal callback to create RenderStage/RenderBin and<br>assign these to the rendering backend, but this does require a greater<br>knowledge of the internals of the rendering backend.<br><br>Robert.<br><br>On Fri, Apr 22, 2011 at 9:52 PM, Craig S. Bosma <<a href="mailto:craig.bosma@gmail.com">craig.bosma@gmail.com</a>> wrote:<br><blockquote type="cite"><div>Hi,<br>I'm working on a shader-driven graphics pipeline for an OSG-based app, and I<br>want to better understand how I can better control the rendering order. I<br>want to render my initial scene to several texture targets, with opaque and<br>transparent objects handled separately. Currently I do this using node<br>masks, but from this thread<br>(<a href="http://forum.openscenegraph.org/viewtopic.php?t=2374">http://forum.openscenegraph.org/viewtopic.php?t=2374</a>) it seems like it<br>would be better to use renderbin/renderstages. I have several more<br>post-processing stages to follow, so I'm convinced that's the way to go for<br>me to have full control over the pipeline.<br>I've dug into the source for SceneView, RenderBin, RenderStage, etc. but<br>it's not obvious to me how to shift objects from one bin to another (aside<br>from setRenderBinDetails), or how to add stages that form a dependency<br>chain. If anyone has examples or general advice on where to look, I'd be<br>glad to hear it.<br>Thanks,<br>Craig<br><br><br>_______________________________________________<br>osg-users mailing list<br><a href="mailto:osg-users@lists.openscenegraph.org">osg-users@lists.openscenegraph.org</a><br><a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org</a><br></div></blockquote>_______________________________________________<br>osg-users mailing list<br><a href="mailto:osg-users@lists.openscenegraph.org">osg-users@lists.openscenegraph.org</a><br><a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org</a><br></div></div></span>
                
                
                
                
                </blockquote>
                
                <div>
                    <br>
                </div>
            </div>
        </div>