Hi Robert,

> The only parts I'd query about is the removal of existing methods as these 
> could break the build


Yes, I know that, it's always a little risky to remove methods...

To help you during your review, here is how to port from "old API" to "new API" 
:


1/ replace the methods "setUseModelViewAndProjectionUniforms" and 
"getUseModelViewAndProjectionUniforms" which use a boolean type by 
"setActiveBuiltInUniforms" and "getActiveBuiltInUniforms" which use an unsigned 
int as argument to specify flags

=> I think this is an easy port, because in a classic project you don't call 
these methods more than once to configure your State

2/ replace the StateSet methods "getAttributeList", "getTextureAttributeList" 
and "getUniformList" which return non-const reference by version which return 
const reference

=> I think this is a little more difficult port, but it is probably necessary 
to avoid modifying the StateSet content whitout the StateSet knows it.
I've made the port every where it was used : 
osgAnimation/LinkVisitor.cpp 
osgDB/SharedStateManager.cpp 
osgUtil/GLObjectsVisitor.cpp 
osgUtil/IncrementalCompileOperation.cpp 
osgUtil/Optimizer.cpp 
osgUtil/RenderLeaf.cpp

Every time, it was solved by just adding a "const" before a variable 
declaration or a by replacing a "iterator" with a "const_iterator"

3/ there are a few other API changes, but for "internal methods" only, for 
example :
void applyBuiltInMatrixUniformsIfRequired(); 
void updateBuiltInMatrixUniformsIfRequired(unsigned int 
buildInMatrixUniformsToUpdate); 
void resetBuiltInMatrixUniforms();
are new methods which replace older ones, but the were used only inside the 
State class.

Thank you, and have fun time with your family !

Cheers,
Aurelien

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=52593#52593





_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to