Thanks for the changes,

W.r.t. question you asked earlier I would vote for option #3. Ie:

CullSettings::setComputeNearFarMode( mode, bool disableInheritance=true);
CullSettings::setCullMask( mode, bool disableInheritance=true);
et cetera.

I remember I had once a problem with not working setCullMask. It turned out
I changed setCullMask but it was ignored because inheritance mask was not
set properly. Option #3 would make a life easier in such cases. So I think
that solution where cull settings variable setters modify appropriate
inheritance flags is actually quite reasonable from usage perspective.

If you want to make inheritance masks modification more explicit for users
just add second bool parameter without default initialization - this will
force compiler error for users code and will annoy some of them but
certainly will make community aware of the shift in inheritance policy ;-).

On a side note: it would be good to ask this question again in separate post
with more appropriate subject. I suppose lots of interested users who don't
read every forum email might have skipped it.

Cheers,
Wojtek

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Robert
Osfield
Sent: Tuesday, March 18, 2008 7:29 PM
To: OpenSceneGraph Users
Subject: Re: [osg-users] osgShadow example and gerneral question


A little update.  To get osgShadow back working again I've applied a
tempory fix to ShadowMap, ParallelSplitShadowMap and SoftShadowMap
such that the setCullInheritance(0x0) is used.   Applying this same
change to ShadowTexture broke it so I've commented this change out.
These changes are now checked in.

I don't think these changes are perfect, and they don't solve the
other places in the OSG or in user code that might not have the
InheritanceMask set appropriately.  My current inclination is to
change CullSettings so that it when you set variables the associated
mask bit is disabled, this behaviour is something that would have to
be optional, even it were on by default.  My guess is that would give
us as close to the original behavior without breaking the rules of
inheritince.

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

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

Reply via email to