Hi Terry, You are on the right track, there isn't a general purpose solution for pushing and popping the various cull atttributes related to CullSettings, the CullVisitor::apply(osg::CameraNode& camera) currently manually saved the various attributies, applies the new settings does the traversal then reapplies the save attributes.
One could add LOSScale to this mix, but perhaps a more general purpose pushCullSettings/popCullSettings would be the ideal solution. Robert. On 10/30/06, Terry Welsh <[EMAIL PROTECTED]> wrote:
Yep, I've seen that stuff. My confusion was all about where to make the call to inheritCullSettings. After a bit more poking around, it seems I can add inheritCullSettings(camera); as the very first line in CullVisitor::apply(osg::CameraNode& camera) and I get a working CameraNode LOD scale. However, I think to do this properly I need to somehow push and pop the CullSettings at the beginning and end of this apply function. Does that sound right? I can't find a mechanism for doing this; does one exist? - Terry > Hi Terry, > > osg::CameraNode inherits from osg::CullSettings which is where its > inhertCullSettings comes from. The setInheritanceMask in CullSettings > has a bit for LOD_SCALE. > > Robert. > > On 10/27/06, Terry Welsh <[EMAIL PROTECTED]> wrote: > > So, I'm not sure how to wire up CameraNode to do this. It appears > > that CameraNode always inherits SceneView's lod scale and that's what > > I need to prevent. > > > > SceneView has its cull() functions, which calls cullStage(), which > > calls cullVisitor->inheritCullSettings(*this). My best guess is that > > CameraNode needs to do something similar in order to mask pieces of > > CullSettings that it does not want to inherit, but I can't find any > > cull functionality in CameraNode like I find in SceneView, so I don't > > know where I should be calling inheritCullSettings(). > > > > Does this sound right so far or am I barking up the wrong tree? Any > > suggestions where to go from here? > > - Terry > > > > > Message: 30 > > > Date: Fri, 27 Oct 2006 19:11:58 +0100 > > > From: "Robert Osfield" <[EMAIL PROTECTED]> > > > Subject: Re: [osg-users] setLODScale and CameraNode > > > To: "osg users" <[email protected]> > > > Message-ID: > > > <[EMAIL PROTECTED]> > > > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > > > > > Hi Terry, > > > > > > It might simply be that it hasn't been wired up yet... feel free to > > > browse through the code. > > > > > > Robert. > > > > > > On 10/27/06, Terry Welsh <[EMAIL PROTECTED]> wrote: > > > > setLODScale works fine with SceneView, but I can't get it to work on > > > > CameraNode. It appears to have no affect at all. I tried adding > > > > > > > > mycameranode->setInheritanceMask(CullSettings::ALL_VARIABLES - > > > > CullSettings::LOD_SCALE); > > > > > > > > so that it wouldn't inherit the LOD scale from its parent SceneView, > > > > but that doesn't help. Anyone know what I'm missing? > > > > -- > > > > Terry Welsh - mogumbo 'at' gmail.com > > > > www.reallyslick.com | www.mogumbo.com _______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
_______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
