Hi,

I'd like some advice on using OSG for rendering many dynamic objects:

I've got an app where as many as 10,000 objects (of 200 vertices each) may
or may not be updated each frame. Perhaps about 10% of the objects would
update on the average frame, but all of them could conceivably require it.

I've been perusing the osg DrawElements code, with intention to use VBOs &
EBOs, and glBufferSubData to do the object updates. I'm trying to optimize
this within the OSG framework.  I'm thinking of having one Geometry node
with 10K 'drawElements' primitive sets, each referencing the same (large)
VBO and EBO. Alternately, maybe having several VBOs each containing a
sub-group of the objects.

I also notice a few blogs that recommend double buffering, i.e. releasing
the VBO/EBO to GL while it draws frame A (via NULL pointer call
glMapBuffer), and obtaining a pointer to a new or recycled buffer for
filling in data for frame B. There's also a debate about using 'glMapBuffer'
vs 'glBufferSubdata' to access the buffers.

are ther any examples that employ double buffering in osg ? any other
techniques/suggestions  ?

Chris C
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to