Hi Robert, all, I have an application that will load a model from file and attach a custom cull callback to the node. I recently discovered that my cull callback does not work properly if the root node of the model is a Geode. When encountering a Geode, the CullVisitor will handle the cull callbacks and then traverse the Geode. However, the drawables are processed after the traversal, regardless of the result of the cull callbacks.
I typically use cull callbacks to either prevent traversal of a node under certain conditions, or to wrap some custom operation around the traversal of the sub-graph. Neither of these are currently possible with Geodes. I recall a discussion a few years ago about making Drawable objects another kind of Node. Is this still being considered? If this would cause too much compatibility issues, how about adding an additional NodeVisitor::apply(Drawable) method? This would just require implementing a Geode::traverse method and should not cause much compatibility issues. With some minor changes to the CullVisitor, this would allow cull callbacks to work properly with geodes. I also think this would simplify implementing custom node visitors that operate on drawable objects. Does this seem like a reasonable change? Thoughts/suggestions? Cheers, Farshid
_______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org