diff --git a/include/osgProducer/OsgCameraGroup b/include/osgProducer/OsgCameraGroup index a42b00455..301badaa6 100644 --- a/include/osgProducer/OsgCameraGroup +++ b/include/osgProducer/OsgCameraGroup @@ -126,7 +126,7 @@ class OSGPRODUCER_EXPORT OsgCameraGroup : public Producer::CameraGroup void setLODScale( float scale ); - float getLODScale() const { return _LODScale; } + float getLODScale() const; void setFusionDistance( osgUtil::SceneView::FusionDistanceMode mode,float value=1.0f); @@ -197,7 +197,6 @@ class OSGPRODUCER_EXPORT OsgCameraGroup : public Producer::CameraGroup osg::ref_ptr _global_stateset; osg::Vec4 _clear_color; - float _LODScale; osgUtil::SceneView::FusionDistanceMode _fusionDistanceMode; float _fusionDistanceValue; diff --git a/src/osgProducer/OsgCameraGroup.cpp b/src/osgProducer/OsgCameraGroup.cpp index db29adbc8..b238b2a60 100644 --- a/src/osgProducer/OsgCameraGroup.cpp +++ b/src/osgProducer/OsgCameraGroup.cpp @@ -213,7 +213,6 @@ void OsgCameraGroup::_init() _scene_data = NULL; _global_stateset = NULL; _clear_color.set( 0.2f, 0.2f, 0.4f, 1.0f ); - _LODScale = 1.0f; _fusionDistanceMode = osgUtil::SceneView::PROPORTIONAL_TO_SCREEN_DISTANCE; _fusionDistanceValue = 1.0f; @@ -295,7 +294,6 @@ void OsgCameraGroup::setUpSceneViewsWithData() sv->setFrameStamp( _frameStamp.get() ); sv->setGlobalStateSet( _global_stateset.get() ); - sv->setLODScale( _LODScale ); sv->setFusionDistance( _fusionDistanceMode, _fusionDistanceValue ); } } @@ -331,11 +329,15 @@ const osg::Vec4& OsgCameraGroup::getClearColor() const void OsgCameraGroup::setLODScale( float scale ) { - // need to set a local variable? - _LODScale = scale; + getCullSettings().setLODScale(scale); setUpSceneViewsWithData(); } +float OsgCameraGroup::getLODScale() const +{ + return getCullSettings().getLODScale(); +} + void OsgCameraGroup::setFusionDistance( osgUtil::SceneView::FusionDistanceMode mode,float value) { // need to set a local variable?