We are using the OSG along with JOGL to provide and manage contexts. In general, this has worked well, and we have seen others reporting the same thing on this mailing list. (We're not yet using the embedded graphics window, however, but have our own SceneView, etc.)
One thing that we had to be careful to do was manage context IDs correctly. We use multiple windows, and windows can be removed and return, so that their contexts can be removed and remade. We discovered that if we were removing a window and creating it again, we could use JOGL and some fancy footwork to tell the OSG to clean up a context (releaseAllGLObjects() and flushAllDeletedGLObjects()) and stop drawing in it until the context is initialized again. We seem to be doing alright with that, since it seems we're getting notified about the context going away (removeNotify() in Java). However, in some cases, as with the JOGL lightweight canvas, which uses a PBuffer, a context can be recreated when the object is resized. We don't seem to be getting any messages in time to clean up OSG's OpenGL objects while the context is current. Is there a way, or would it make sense, to allow us to clean up all of the OpenGL objects associated with a context, without that context being current? I don't know what happens to OpenGL objects when their context goes away, and I'm wondering whether, in this case, we can tell OSG to clean up its stuff but it doesn't need to tell OpenGL anything. thanks, andy _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

