Standardised the culling flags between CullingSet and CullStack, and

made ENABLE_ALL_CULLING enable all culling including the near and far plane.
DEFAULT_CULLING is now used for the default as uses the same original
values as ENABLE_ALL_CULLING once did - view frustum culling with near and
far culling. SceneView now uses DEFAULT_CULLING.
This commit is contained in:
Robert Osfield
2003-08-20 12:50:54 +00:00
parent bca7e4e73b
commit 1c3b2b2554
5 changed files with 26 additions and 13 deletions

View File

@@ -17,7 +17,7 @@ using namespace osg;
CullStack::CullStack()
{
_cullingMode = ENABLE_ALL_CULLING;
_cullingMode = DEFAULT_CULLING;
_LODScale = 1.0f;
_smallFeatureCullingPixelSize = 2.0f;
_frustumVolume=-1.0f;
@@ -151,11 +151,7 @@ void CullStack::pushProjectionMatrix(RefMatrix* matrix)
cullingSet->getFrustum().transformProvidingInverse(*matrix);
// set the culling mask ( There should be a more elegant way!) Nikolaus H.
osg::CullingSet::Mask mask = 0;
if( _cullingMode&VIEW_FRUSTUM_CULLING) mask |= osg::CullingSet::VIEW_FRUSTUM_CULLING;
if( _cullingMode&SMALL_FEATURE_CULLING) mask |= osg::CullingSet::SMALL_FEATURE_CULLING;
if( _cullingMode&SHADOW_OCCLUSION_CULLING) mask |= osg::CullingSet::SHADOW_OCCLUSION_CULLING;
cullingSet->setCullingMask(mask);
cullingSet->setCullingMask(_cullingMode);
// set the small feature culling.
cullingSet->setSmallFeatureCullingPixelSize(_smallFeatureCullingPixelSize);