Hello, When a node with VBO's enabled outlives the lifetime of it's renderer, I get an access violation in GLBufferObjectSet::orphan when I try to destroy the node. I tried to write down the scenario:
using namespace osg; ref_ptr<Node> node(new Node); ref_ptr<Geometry> geom(new osg::Geometry); // ... fill geom geom->setUseVertexBufferObjects(true); node->addDrawable(geom.get()); { ref_ptr<osgViewer::Viewer> viewer(new osgViewer::Viewer()); viewer->setSceneData(node); viewer->frame(); // render for a while viewer = NULL; // The viewer is destroyed here } node = NULL; // This gives the access violation. Now if I don't set "geom->setUseVertexBufferObjects(true);" everything works fine. Do you still need a valid render context or a valid viewer to be able to clean up the VBO's? Nico
_______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org