[osg-users] Best practices for dealing with complex scene graph

OpenSceneGraph Users osg-users at lists.openscenegraph.org
Mon Mar 2 15:48:10 PST 2020


I found a reasonably good generic solution to flatten any part of my scene 
graph.
- Use a visitor pattern to collect all my osg::Geometry into a set of 
geometries starting at the osg::Group in question
- do a clone of the geometries into a new set with 
(osg::CopyOp::DEEP_COPY_PRIMITIVES | osg::CopyOp::DEEP_COPY_ARRAYS) , then 
add them into a new osg::Group for the optimizer to work with.
- Use a osgUtil::MergeGeometryVisitor to collect all the primitive sets
- Then an osgUtil::IndexMeshVisitor to merge the primitive sets


On Sunday, March 1, 2020 at 9:07:42 AM UTC-8, AndrewC wrote:
>
> Hi,
> I was wondering what the best practices are for dealing with a complex 
> scene graph where a single osg::Group might have , say, 5000 children where 
> each child is fairly simple osg::Geom geometry. Clearly, this is 
> inefficient and draws slowly.
> So obviously, compiling/collecting the geometry into one drawable would be 
> much more efficient. osgUtil::Optimizer does not seem to do this for me, or 
> am I missing something?
>
> Andrew
>

-- 
You received this message because you are subscribed to the Google Groups "OpenSceneGraph Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to osg-users+unsubscribe at googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/osg-users/81eebbe0-f14b-4aa4-9c09-8bed0152647b%40googlegroups.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20200302/0a205572/attachment.html>


More information about the osg-users mailing list