Hello Robert,

It will initialize with the with the
DisplaySettings::instance()->getMaxNumberOfGraphicsContexts() value.

Exactly, and at that point the max number of graphics contexts is smaller than what it will be since the viewer and contexts haven't been created yet. So it will have to resize eventually.

osgViewer should be doing the resizeGLObjectBuffers once it knows how
manage contexts it has.

But this doesn't solve the issue as you've seen, since not all per context data is resized by resizeGLObjectBuffers(). (it now does with your fix, at least for osg::Texture)

This looks like a bug then, resizeGLObjectBuffers should resize all
buffers than hold per context data.

Thanks for the quick turn-around and review on this. Your conclusion makes sense. But I hope osg::Texture is the only place where this kind of bug was present. It may be that it was just the first one my example tripped upon, and the (heavy-handed) workaround fixed them all...

I'm updating and building now. I'll let you know how it goes.

Anytime you want to try my code example though, you may see what my usage model is and it may point out other things...

J-S
--
______________________________________________________
Jean-Sebastien Guay    jean-sebastien.g...@cm-labs.com
                               http://www.cm-labs.com/
                        http://whitestar02.webhop.org/
_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to