Hi Robert,

> Another possibility I missed is the use of doubles in osg::Plane by
> default, whereas 1.2 used float by default in osg::Plane.

thanks for the hint. However, I think the problem could be related to the 
compile/apply of GL objects instead. If I disable the GLObjectsVisitor that 
my app runs after loading a new scene, both builds of the application start 
in similar conditions with little difference in memory consumption. At this 
point I start moving the camera around, and display lists and textures get 
compiled as they are displayed for the first time. Here the difference 
between the OSG-1.2-based build and the newer one becomes clear: the newer 
one eats much more memory, roughly twice as much, while the amount of data 
loaded (geometry+imagery) is the same.

All textures are DXT-compressed, and they come with mipmaps already stored 
in the image file (DDS). In order to minimize the influence of other 
optimizations, I've turned off the UnRefImageAfter....etc. flag on all 
textures. Except for the different version of OpenThreads and 
OpenSceneGraph, both builds share the same code and 3rd-party libraries.

Any other clues?

Thanks,
Marco

 

_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to