Ok I quickly tried that, setting setUseDisplayList and
setSupportsDisplayList to false, and it made no noticeable difference to
memory consumption. I'm calling:

///////////////////////////
osg::ref_ptr<osg::Geometry> meshBodyGeometry = ...

...

meshBodyGeometry->setUseDisplayList(false);
meshBodyGeometry->setSupportsDisplayList(false);

...

this->geode->addDrawable(meshBodyGeometry);

///////////////////////////

The legacy app didn't use display lists either, it was quite crude. For each
object to be rendered, it stored an array of vertices, normals and faces
(indices to vertex array) and literally called

///////////////////////////
glBegin(GL_POLYGON)
glNormal3fv( ... )
glVertex3f( ... )
elEnd()
///////////////////////////

So not the best way to render objects! However I'm thinking that the old
code is a lot more lightweight since they are storing and rendering their
vertices direct, whereas I have PAT, Geode, Geometry, PrimitiveSets ....

Hence the questions on what steps I could take to reduce mem consumption.

Thanks for your time,
Andrew
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to