Currently my scene includes 3.4 millions triangles and may have even more triangles later. On a 3.6G Xeon CPU and NVIDIA Quadro 3400, the fps is about 8. Large drawables are not suitable because the demand for fast collision detection and modification to triangles. I need a balanced scene graph having thousands of small drawables:(
On 5/23/06, Robert Osfield <[EMAIL PROTECTED]> wrote:
On 5/23/06, Yanling Liu <[EMAIL PROTECTED]> wrote:
> Hi, suppose there are 60,000 triangles need to be drawn, in following four
> different configurations, which one has the best performance?
>
> 1. one osg::Geode having 200 different drawables, each drawable has 300
> triangles
> 2. 20 different osg::Geode, each having 10 different drawables, each
> drawable has 300 triangles
> 3. 200 osg::Geode, each having one drawable, each drawable has 300 triangles
> 4. one osg::Geode having one drawable, the drawable has all 60,000
> triangles.
Best performance at what?? Pure rendering? Intersection traversals?
As a general aim you should be trying to build a balanced scene graph,
ideally a quad or oct tree to make the cull traversal efficient. So
200 nodes or drawables isn't balanced, so straight away you'd be
better off build a proper graph with it, the
osgUtil::Otimizer::SpatializeGroupVisitor can help you out here.
Next thing is granularity, for intersection testing you want small
clumps of triangles in each drawables, but for rendering with modern
GPU's they prefer much large clumps of traingles, 1,000-10,000 per
drawable is typically sweet spot, but they can even handle up to a
million triangles in a single drawable without breaking frame so
things arn't too critical.
All in all though for your given example dataset what ever you do
you're likely to hit a solid 60/70Hz without problem so just create
the scene graph that is convinient for you. Once you start properly
scaling up the scene to ten of thousands of nodes/drawables, and
millions of triangles then time has come to pay much more attention to
creating an optimal scene graph.
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/
_______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
