Hi Robert,

In my experience simplifying the scene graph hierarchy (without reducing triangle count etc...) always increased the performance. A simpler hierarchy means OSG will do less work. But it also means improved batching (if drawables are merged they will be drawn with single OpenGL call, CPU-GPU communication overhead will be less ). NVidia documents say that batching in OpenGL is not as important as in DirectX but I guess this doesn't mean that it is not important :).

I don't know which of the above affects the performance more and anyway the answer depends on the 3d database and the position of the camera. What you see determines your bottleneck.

In our case, customers request more and more complex databases ( more objects,more animated parts, more visual variation etc...) and reducing the scene graph complexity without reducing the visual complexity has limits so at least in our case CPU bottlenecks are pretty possible. Thats why "OSG working with a sperate thread for app, cull and draw dispatch" sounds very interesting to us. I can also offer some help in its implementation if needed.

Tugkan

Hi Tugkan,

I'll quickly jump in and out with my 2p.

First up I'd very much like to see OpenGL/GLX extensions that allow us
to create two seperate graphics context and two seperate graphics
cards and specify that the outputs should be combined to generate one
output. This would be to do SLI\cross fire explictly in the app,
rather than done through the OpenGL driver which happens at present.

Going this route should help performance scale with two graphics
cards/CPU cores and one output.  Don't take NVidia's line that this
will be useful/possible in a few years, its useful and possible right
now.  We'd only need a small tweak to Producer to achieve it and the
rest of the Producer/OSG is ready, waiting and willing to take
advatnage of things.

Secondly I would like to be able to get the OSG working with a sperate
thread for app, cull and draw dispatch, with an overlap of part of one
frame where the constant drawable and state objects can be safely
overlap between frames.  This would work in conjunction with the
current ability for muiltiple cull-draw pairs.  However, I don't
expect a huge jump in performance though unless you are seriously cull
and draw dispatch limited.

Robert.
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/




--
Tugkan Calapoglu

VIRES Simulationstechnologie GmbH
+49.(0)8031/463641
[EMAIL PROTECTED]
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

Reply via email to