Greetings, Sorry for the wall-of-text. I am working on a really thorny issue, and I want to include as much information as possible.
I am not sure that this is necessarily an OSG-related bug, but I was wondering if there is anyone here who can provide some insight anyway, because I can get the bug to appear/disappear by changing certain OSG settings, but I have no idea why. Basically, we have an OSG-based app (v. 2.8.3) that is integrated with SilverLining for all of our atmospheric stuff. The problem is that, on some computers, we are seeing a "frame rate decay." That is, the frame rate will start off high (180fps or so), and the steadily decrease at a rate of about 2fps/sec. So after 30 seconds, it's running at 120fps. After a minute, it's running at 60fps. And so on. Note: this is only happening on a couple of computers. We've had an opportunity to test this app on 6 different computers. So far, the problem has shown up on 2 of them. On those two computers, the problem only shows up under the following conditions: 1. I'm using SilverLining, AND 2. I'm using the SingleThreaded model, OR the app uses render-to-texture. (the render-to-texture is done by attaching an osg::Texture2D to an osg::Camera, set to PRE_RENDER with a FRAME_BUFFER_OBJECT render target implementation, which is then added to the scene graph) So, if I remove the SilverLining integration, the problem goes away. However, SilverLining in of itself is not a sufficient cause. I know this because I can run a simple app, like the OSG 2.x sample that ships with the SilverLining SDK, and the problem does not appear. However, if I add a simple RTT camera to that sample, the problem shows up. Also, if I set the threading model to SingleThreaded, the problem shows up whether there's any RTT in the scene or not. In our own app, the problem goes away if I use a non-SingleThreaded model AND I disable any features that use RTT (osgShadow, mirrors, etc.). There might be other conditions that cause the problem to show up, but if so, I haven't found them. And again, this only happens on two of the computers, out of the six that we've had an opportunity to try (we'll have an opportunity to test on more computers soon). Part of what makes this bug so devious is that it doesn't happen on every computer, and I'm guessing that reduces my chance of finding someone who has already encountered it and solved it. =P Another interesting fact is, if I change the threading model at runtime (using the 'm' key, thanks to the ThreadingHandler), the frame rate "Resets", and then starts decaying again. In other words, the app will start at 180fps or so, and then decay (after a minute or so) to 30fps. Then, if I hit the 'm' key to change to a different threading model (doesn't matter which), the frame rate shoots back up to 180fps and then starts decaying again. I can do this over and over again by hitting the 'm' key. Tomorrow, I'll try to delve into the depths of the OSG and SilverLining code to see if I can find the problem. In the meantime, I would feel silly if I didn't at least throw a couple of messages out there and ask if someone else has already encountered this. Thank you! Cheers, Frank ------------------ Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=39067#39067 _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

