Don Burns wrote:
However, I must cast a bit of doubt here because the operations that this does are very light weight. Their effect, however, down the line in the draw traversal, are potentially heavy. That is, new display lists need to be created and new textures need to be downloaded on first draw. So commenting out that line would cause display lists not to be created, for example, which is a potentially heavy task (and, well, again, I/O limited - not _file_ I/O, but I/O nonetheless).
Also, worth noting, is that compiling displaylists is generally not interruptible. Once you start displaylisting a single entity, you have no abort until the operation completes. The DatabasePager tries to estimate how many displaylists it can manage to compile in the time available to it (before the main draw thread has to start drawing a new frame). After each DL is compiled, it checks to see how much time remains, and stops compiling if it thinks there won't be sufficient time. However, different entities take differing amounts of time to compile, and the code has no way to predict this. If your model is comprised of some heavy entities, they can take (much) longer to compile than anticipated, and cause the draw thread to be tied up compiling MUCH longer than planned -- so much so that it doesn't get around to completing a frame draw when required.
Did you build your OpenFlight database yourself? Are you familiar with what it's made of, and how "heavy" the entities within it are?
-don
-- Chris 'Xenon' Hanson aka Eric Hammil | http://www.3DNature.com/ eric at logrus "I set the wheels in motion, turn up all the machines, activate the programs, and run behind the scenes. I set the clouds in motion, turn up light and sound, activate the window, and watch the world go 'round." -Prime Mover, Rush. _______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
