Hi JP, Tim, Thanks for the replies.
Using the single threaded mode gets rid of the flicker, as does setting the state set data variance to dynamic when I create the scene graph: mt->getOrCreateStateSet()->setDataVariance(osg::Object::DYNAMIC); I'm convinced that your explanation of collision between draw and update traversals is in play, since those fixes worked. However, I'm still unsure of why(whether?) the flickering was related to creating 'new' materials in the callback. When I use multi-threaded viewer mode and I don't set variance to dynamic (i.e., ripe for collisions), the color does NOT flicker if I'm NOT using a 'new' material, but does flicker when I do use 'new'. In addition, it is only the second sphere that flickers, while both of them are creating new materials and modifying the state set each time, which leads me to believe there is something more complicated going on. The collisions would be occurring in all of these cases but the flickering does not always follow as the result. I'm not sharing state sets at all - there are two different matrixtransform nodes, each with it's own state set. That's why I'm confused about how the color of the first one is ever applied to the second. Each newly created material has its color defined before the state set is modified to include that attribute, so even with thread collisions happening I don't understand how stateset2 knows what color stateset1 is. Again, you are both absolutely right about how to avoid the issue, and I understand that the test code I originally included does things one shouldn't do. I was just trying to understand what was happening in memory to get that effect - probably it is just that traveral collisions are doing stranger things than I imagine. They have never crashed the test app though. ;) Thank you! Cheers, Tom ------------------ Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=30042#30042 _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

