On Wed, Sep 1, 2010 at 7:53 PM, Brad Huber <[email protected]> wrote:
> Hello, > > > > I am interested in granularly controlling the LODScale for different parts > of my scene graph. For example I have one part of the graph rendering a > globe (osgEarth) and another part rendering items on the globe. I would > like to be able to increase or decrease the LODScale for just the globe > portion without disturbing everything else. The CullSettings are typically > attached to the Camera. I wasn’t sure initially that creating two separate > cameras was the right solution. I still want the depth buffering and render > order stuff to be preserved the way it is now (the globe and the items on > the globe render to the same depth buffer). > > > > Thoughts? > > > I'd approach this by writing a cull callback that changes the LODScale for the subgraph and then restores it. Small changes like that to the CullSettings and Camera should be safe, as the current cull traversal is the only process currently using that camera. A cull callback or a custom traverse() method are, by the way, the best places to make rendering choices for LOD because the eye point is available in the traversal. osg::LOD does its hard work during the cull traversal. The project describe at http://shiny-dynamics.blogspot.com/2010/09/seamless-engine-goes-global.html makes fairly low level rendering decisions in a traverse() method during the cull traversal. Tim
_______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

