HI Matthias, If the fix works just post it to osg-submissions as a complete file and I can review it.
Thanks, Robert. On 4 July 2012 09:55, Matthias Schütze <[email protected]> wrote: > Hi there, > >> A customer is having trouble running our OSG-based application on his >> computer. I sent him osgviewer.exe and when he runs "osgviewer.exe cow.osg" >> it works, but this message is printed on the console: Warning: RenderBin >> "RenderBin" implementation not found, using default RenderBin as a fallback. >> >> It's just a warning and he does see the cow, but I'm wondering if this >> message is a symptom of some other problem? FWIW, his workstation-class >> laptop has a FirePro m8900 video card with up to date drivers. > > Some month ago, this post appeared on the forum and was not yet > finally solved. I found that forum thread because I experienced very > similar problems: > - sporadical "Warning: RenderBin "RenderBin" implementation not found, > using default RenderBin as a fallback" > - even more sporadical "Warning: RenderBin "DepthSortedBin" > implementation not found, using default RenderBin as a fallback" > - the problem occurs, when setting up some scene data for several > views on program start > - most likely, the problem occurs only with multi-threaded threading > models (furthermore, I could observe concurrent initialization of > static RenderBinPrototypeList while debugging) > > Roberts suggestion was: > >> This suggests a race condition on the static initialization inside the >> static RenderBinPrototypeList* renderBinPrototypeList() method. On technique >> we could employ is to use a local static initializer object that forces the >> static initialization: >> >> struct ForceRenderBinProtypeListInitializer >> { >> ForceRenderBinProtypeListInitializer() >> { >> OSG_NOTICE<<"Forcing initialization"<<std::endl; >> renderBinPrototypeList(); >> } >> }; >> >> static ForceRenderBinProtypeListInitializer >> s_ForceRenderBinProtypeListInitializer; >> >> This is a bit hacky, but it might work. The alternative would be to add a >> static mutex and use this with the renderBinPrototypeList() but this would >> have it's usage slower just because of initialization which isn't a good >> solution. I've attached a modified version of RenderBin.cpp from svn/trunk, >> could you try this out on your system to see if cures the warning? > > After recompiling my OSG 3.0.1 with this change, I tried it out on a > couple of Win 7 x64 machines where the problem occurred from time to > time. Well, the warnings did not show up in about 500 runs per system. > As I stated in the web repository of svn trunk, this change was not > committed yet. Maybe, one could submit it, now? > > Cheers, > Matthias Schütze, Germany > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

