[osg-submissions] SharedStateManager updated for all DataVariance modes

Robert Osfield robert.osfield at gmail.com
Wed Jul 2 01:56:32 PDT 2008


Hi Terry,

Thanks for the changes.  I've done a review and found the changes a
little more complex (in terms of if statment size) so I have changed
the way that comparisons are done using a
shareTextures()/shareStateSets() helper function, that wraps up a
boo[3] vector, one bool for each of DYNAMIC, STATIC and UNSPECIFIED.
The resulting code is cleaner and hopefully more maintainable with it.

I've checked in my changes, could you do an svn update and let me know
if these changes work out fine.

Cheers,
Robert.

On Wed, Jul 2, 2008 at 1:01 AM, Terry Welsh <mogumbo at gmail.com> wrote:
> It sounded like nobody was opposed to this update, so here is the
> code.  I didn't change the value of SHARE_ALL for the sake of backward
> compatibility even though it probably should be different.  I still
> consider that possibility open for discussion.
>
> Per Robert's suggestion, the default share mode was SHARE_TEXTURES and
> is now SHARE_STATIC_TEXTURES | SHARE_UNSPECIFIED_TEXTURES.  I'm not
> sure why textures were the default share mode instead of StateSets.
> Maybe the original author will comment on that?  I kept SHARE_TEXTURES
> equal to SHARE_STATIC_TEXTURES for backward compatibility, and did the
> same for StateSets.
>
> After doing this I think SharedStateManager could be expanded a lot,
> but I don't know how much it would help performance.  For example, you
> could share individual StateAttributes instead of whole StateSets.
> More specifically, a StateSet is not equal to another StateSet if only
> its texture is different.  Seems like there would be a lot of
> opportunities in typical OSG usage to share most attributes in
> StateSets that only differ by their texture.
> - Terry
>
> _______________________________________________
> osg-submissions mailing list
> osg-submissions at lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
>
>


More information about the osg-submissions mailing list