On 9/7/2010 9:25 AM, Andrew Cunningham wrote: > Just as background, the model is a CAD model of a fairly typical part. > When broken down to the component CAD entities, there are a total of about > 19,000 groups in a hierarchy about 4 levels deep. Of course the geometry > could be coalesced to any level, but users expect visibility control and > attribute control down to the individual entity level. The traversal of the > scene graph is very significant portion of the time taken to refresh the > scene.
I would consider using some sort of dynamic building of the model. Build the scenegraph with only the top-level groups, flatten everything below them. If the user performs and action that needs finer grained division (like, drilling into one of the groups) then you can replace the flattened subgraph with a newly-built subgraph with fine-grained grouping. either all the way down, or just down to the next step, and repeat the process when/if they drill into that layer. For picking, you should be able to have a unique ID on every leaf node, regardless of whether it's in a group or not. Paul Martz of Skew Matrix could write a book about "don't use OSG to simply recreate your application's internal geometry structure". > Andrew -- Chris 'Xenon' Hanson, omo sanza lettere Xenon AlphaPixel.com PixelSense Landsat processing now available! http://www.alphapixel.com/demos/ "There is no Truth. There is only Perception. To Perceive is to Exist." - Xen _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

