Hello all!

In it's current form, osgWidget creates each Widget (an osg::Geometry
subclass) using the following method calls:

        setUseDisplayList(false);
        setDataVariance(osg::Object::DYNAMIC);

(I do not, however, modify anything with regards to
setUseVertexBufferObjects, so it remains whatever the Drawable/Geometry
default is). 

My question, then, is twofold:

        1. Given the above (and the fact that I am able to modify the
osg::Array objects within the Widget directly and see immediate
results), is it safe to say I am forcing the drawing implementation to
use the slowest, "immediate" mode for rendering? I've always assumed
this, and have been comfortable with that during development.

        2. If the above is true, consider the following situation: a user
creates his interface element, positions, resizes, colors it, etc. When
he's done with this he knows that, for the most part, this particular
element will remain static and require no further updates. Thus, there
could be some benefit then in asking this object to "reconfigure" itself
to use display lists or VBOs. Is this possible? I'd call this method
"locking" or similar, seeing as conceptually it would prevent you from
making any direction geometry modifications as long as the object was
static. However, I'm not entirely sure I have a full understanding of
the process. Is it as easy as calling:

        setDataVariance()
        set{UseVertextBufferObjects/UseDisplayList}()

        ...or is there something more complicated required?

P. S. Is it lunch time yet? :)

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

Reply via email to