osg::CollectOccludersVisitor Class Reference

`#include <CollectOccludersVisitor>`

Inheritance diagram for osg::CollectOccludersVisitor:

## Public Types

typedef std::set< ShadowVolumeOccluder > | ShadowVolumeOccluderSet
Public Types inherited from osg::NodeVisitor
enum | TraversalMode { TRAVERSE_NONE , TRAVERSE_PARENTS , TRAVERSE_ALL_CHILDREN , TRAVERSE_ACTIVE_CHILDREN }
enum | VisitorType { NODE_VISITOR = 0 , UPDATE_VISITOR , EVENT_VISITOR , COLLECT_OCCLUDER_VISITOR , CULL_VISITOR , INTERSECTION_VISITOR }
Public Types inherited from osg::Object
enum | DataVariance { DYNAMIC , STATIC , UNSPECIFIED }
Public Types inherited from osg::CullStack
typedef std::vector< ShadowVolumeOccluder > | OccluderList
typedef std::vector< CullingSet > | CullingStack
typedef fast_back_stack< ref_ptr< RefMatrix > > | MatrixStack
Public Types inherited from osg::CullSettings

enum

VariablesMask {
COMPUTE_NEAR_FAR_MODE = (0x1 << 0) , CULLING_MODE = (0x1 << 1) , LOD_SCALE = (0x1 << 2) , SMALL_FEATURE_CULLING_PIXEL_SIZE = (0x1 << 3) ,
CLAMP_PROJECTION_MATRIX_CALLBACK = (0x1 << 4) , NEAR_FAR_RATIO = (0x1 << 5) , IMPOSTOR_ACTIVE = (0x1 << 6) , DEPTH_SORT_IMPOSTOR_SPRITES = (0x1 << 7) ,
IMPOSTOR_PIXEL_ERROR_THRESHOLD = (0x1 << 8) , NUM_FRAMES_TO_KEEP_IMPOSTORS_SPRITES = (0x1 << 9) , CULL_MASK = (0x1 << 10) , CULL_MASK_LEFT = (0x1 << 11) ,
CULL_MASK_RIGHT = (0x1 << 12) , CLEAR_COLOR = (0x1 << 13) , CLEAR_MASK = (0x1 << 14) , LIGHTING_MODE = (0x1 << 15) ,
LIGHT = (0x1 << 16) , DRAW_BUFFER = (0x1 << 17) , READ_BUFFER = (0x1 << 18) , NO_VARIABLES = 0x00000000 ,
ALL_VARIABLES = 0x7FFFFFFF
}

enum | InheritanceMaskActionOnAttributeSetting { DISABLE_ASSOCIATED_INHERITANCE_MASK_BIT , DO_NOT_MODIFY_INHERITANCE_MASK }
enum | ComputeNearFarMode { DO_NOT_COMPUTE_NEAR_FAR = 0 , COMPUTE_NEAR_FAR_USING_BOUNDING_VOLUMES , COMPUTE_NEAR_FAR_USING_PRIMITIVES , COMPUTE_NEAR_USING_PRIMITIVES }
enum | CullingModeValues { NO_CULLING = 0x0 , VIEW_FRUSTUM_SIDES_CULLING = 0x1 , NEAR_PLANE_CULLING = 0x2 , FAR_PLANE_CULLING = 0x4 , VIEW_FRUSTUM_CULLING , SMALL_FEATURE_CULLING = 0x8 , SHADOW_OCCLUSION_CULLING = 0x10 , CLUSTER_CULLING = 0x20 , DEFAULT_CULLING , ENABLE_ALL_CULLING }
typedef int | InheritanceMask
typedef int | CullingMode

## Public Member Functions

| CollectOccludersVisitor ()
virtual | ~CollectOccludersVisitor ()
| META_NodeVisitor (osg, CollectOccludersVisitor) virtual Object *cloneType() const
virtual void | reset ()
virtual float | getDistanceToEyePoint (const Vec3 &pos, bool withLODScale) const
virtual float | getDistanceToViewPoint (const Vec3 &pos, bool withLODScale) const
virtual float | getDistanceFromEyePoint (const Vec3 &pos, bool withLODScale) const
virtual void | apply (osg::Node &)
virtual void | apply (osg::Transform &node)
virtual void | apply (osg::Projection &node)
virtual void | apply (osg::Switch &node)
virtual void | apply (osg::LOD &node)
virtual void | apply (osg::OccluderNode &node)
void | setMinimumShadowOccluderVolume (float vol)
float | getMinimumShadowOccluderVolume () const
void | setMaximumNumberOfActiveOccluders (unsigned int num)
unsigned int | getMaximumNumberOfActiveOccluders () const
void | setCreateDrawablesOnOccludeNodes (bool flag)
bool | getCreateDrawablesOnOccludeNodes () const
void | setCollectedOccluderSet (const ShadowVolumeOccluderSet &svol)
ShadowVolumeOccluderSet & | getCollectedOccluderSet ()
const ShadowVolumeOccluderSet & | getCollectedOccluderSet () const
void | removeOccludedOccluders ()
Public Member Functions inherited from osg::NodeVisitor
| NodeVisitor (TraversalMode tm=TRAVERSE_NONE)
| NodeVisitor (VisitorType type, TraversalMode tm=TRAVERSE_NONE)
| NodeVisitor (const NodeVisitor &nv, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
virtual | ~NodeVisitor ()
| META_Object (osg, NodeVisitor) virtual NodeVisitor *asNodeVisitor()
virtual const NodeVisitor * | asNodeVisitor () const
virtual osgUtil::UpdateVisitor * | asUpdateVisitor ()
virtual const osgUtil::UpdateVisitor * | asUpdateVisitor () const
virtual osgUtil::CullVisitor * | asCullVisitor ()
virtual const osgUtil::CullVisitor * | asCullVisitor () const
virtual osgGA::EventVisitor * | asEventVisitor ()
virtual const osgGA::EventVisitor * | asEventVisitor () const
virtual osgUtil::IntersectionVisitor * | asIntersectionVisitor ()
virtual const osgUtil::IntersectionVisitor * | asIntersectionVisitor () const
virtual osg::CullStack * | asCullStack ()
virtual const osg::CullStack * | asCullStack () const
void | setVisitorType (VisitorType type)
VisitorType | getVisitorType () const
void | setTraversalNumber (unsigned int fn)
unsigned int | getTraversalNumber () const
void | setFrameStamp (FrameStamp *fs)
const FrameStamp * | getFrameStamp () const
void | setTraversalMask (Node::NodeMask mask)
Node::NodeMask | getTraversalMask () const
void | setNodeMaskOverride (Node::NodeMask mask)
Node::NodeMask | getNodeMaskOverride () const
bool | validNodeMask (const osg::Node &node) const
void | setTraversalMode (TraversalMode mode)
TraversalMode | getTraversalMode () const
void | setValueMap (ValueMap *ps)
ValueMap * | getValueMap ()
const ValueMap * | getValueMap () const
ValueMap * | getOrCreateValueMap ()
void | setValueStack (ValueStack *ps)
ValueStack * | getValueStack ()
const ValueStack * | getValueStack () const
ValueStack * | getOrCreateValueStack ()
void | traverse (Node &node)
void | pushOntoNodePath (Node *node)
void | popFromNodePath ()
NodePath & | getNodePath ()
const NodePath & | getNodePath () const
virtual osg::Vec3 | getEyePoint () const
virtual osg::Vec3 | getViewPoint () const
virtual void | apply (Drawable &drawable)
virtual void | apply (Geometry &geometry)
virtual void | apply (Geode &node)
virtual void | apply (Billboard &node)
virtual void | apply (Group &node)
virtual void | apply (ProxyNode &node)
virtual void | apply (CoordinateSystemNode &node)
virtual void | apply (ClipNode &node)
virtual void | apply (TexGenNode &node)
virtual void | apply (LightSource &node)
virtual void | apply (Camera &node)
virtual void | apply (CameraView &node)
virtual void | apply (MatrixTransform &node)
virtual void | apply (PositionAttitudeTransform &node)
virtual void | apply (AutoTransform &node)
virtual void | apply (Sequence &node)
virtual void | apply (PagedLOD &node)
virtual void | apply (ClearNode &node)
virtual void | apply (OcclusionQueryNode &node)
void | setDatabaseRequestHandler (DatabaseRequestHandler *handler)
DatabaseRequestHandler * | getDatabaseRequestHandler ()
const DatabaseRequestHandler * | getDatabaseRequestHandler () const
void | setImageRequestHandler (ImageRequestHandler *handler)
ImageRequestHandler * | getImageRequestHandler ()
const ImageRequestHandler * | getImageRequestHandler () const
Public Member Functions inherited from osg::Object
| Object ()
| Object (bool threadSafeRefUnref)
| Object (const Object &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
virtual Object * | cloneType () const =0
virtual Object * | clone (const CopyOp &) const =0
virtual bool | isSameKindAs (const Object *) const
virtual const char * | libraryName () const =0
virtual const char * | className () const =0
std::string | getCompoundClassName () const
virtual Node * | asNode ()
virtual const Node * | asNode () const
virtual NodeVisitor * | asNodeVisitor ()
virtual StateSet * | asStateSet ()
virtual const StateSet * | asStateSet () const
virtual StateAttribute * | asStateAttribute ()
virtual const StateAttribute * | asStateAttribute () const
virtual Uniform * | asUniform ()
virtual const Uniform * | asUniform () const
virtual Camera * | asCamera ()
virtual const Camera * | asCamera () const
virtual Drawable * | asDrawable ()
virtual const Drawable * | asDrawable () const
virtual Callback * | asCallback ()
virtual const Callback * | asCallback () const
virtual CallbackObject * | asCallbackObject ()
virtual const CallbackObject * | asCallbackObject () const
virtual UserDataContainer * | asUserDataContainer ()
virtual const UserDataContainer * | asUserDataContainer () const
virtual ValueObject * | asValueObject ()
virtual const ValueObject * | asValueObject () const
virtual Image * | asImage ()
virtual const Image * | asImage () const
virtual void | setThreadSafeRefUnref (bool threadSafe)
virtual void | setName (const std::string &name)
void | setName (const char *name)
const std::string & | getName () const
void | setDataVariance (DataVariance dv)
DataVariance | getDataVariance () const
virtual void | computeDataVariance ()
void | setUserDataContainer (osg::UserDataContainer *udc)
template<class T>
void | setUserDataContainer (const ref_ptr< T > &udc)
osg::UserDataContainer * | getUserDataContainer ()
const osg::UserDataContainer * | getUserDataContainer () const
osg::UserDataContainer * | getOrCreateUserDataContainer ()
virtual void | setUserData (Referenced *obj)
template<class T>
void | setUserData (const ref_ptr< T > &ud)
virtual Referenced * | getUserData ()
virtual const Referenced * | getUserData () const
template<typename T>
bool | getUserValue (const std::string &name, T &value) const
template<typename T>
void | setUserValue (const std::string &name, const T &value)
virtual void | resizeGLObjectBuffers (unsigned int)
virtual void | releaseGLObjects (osg::State *=0) const
template<typename T>
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool | getUserValue (const std::string &name, T &value) const
Public Member Functions inherited from osg::Referenced
| Referenced ()
| Referenced (bool threadSafeRefUnref)
| Referenced (const Referenced &)
Referenced & | operator= (const Referenced &)
bool | getThreadSafeRefUnref () const
OpenThreads::Mutex * | getRefMutex () const
int | ref () const
int | unref () const
int | unref_nodelete () const
int | referenceCount () const
ObserverSet * | getObserverSet () const
ObserverSet * | getOrCreateObserverSet () const
void | addObserver (Observer *observer) const
void | removeObserver (Observer *observer) const
Public Member Functions inherited from osg::CullStack
| CullStack ()
| CullStack (const CullStack &cs)
| ~CullStack ()
void | reset ()
void | pushCullingSet ()
void | popCullingSet ()
void | setOccluderList (const ShadowVolumeOccluderList &svol)
ShadowVolumeOccluderList & | getOccluderList ()
const ShadowVolumeOccluderList & | getOccluderList () const
void | pushViewport (osg::Viewport *viewport)
void | popViewport ()
void | pushProjectionMatrix (osg::RefMatrix *matrix)
void | popProjectionMatrix ()
void | pushModelViewMatrix (osg::RefMatrix *matrix, Transform::ReferenceFrame referenceFrame)
void | popModelViewMatrix ()
float | getFrustumVolume ()
float | pixelSize (const Vec3 &v, float radius) const
float | pixelSize (const BoundingSphere &bs) const
float | clampedPixelSize (const Vec3 &v, float radius) const
float | clampedPixelSize (const BoundingSphere &bs) const
void | disableAndPushOccludersCurrentMask (NodePath &nodePath)
void | popOccludersCurrentMask (NodePath &nodePath)
bool | isCulled (const std::vector< Vec3 > &vertices)
bool | isCulled (const BoundingBox &bb)
bool | isCulled (const BoundingSphere &bs)
bool | isCulled (const osg::Node &node)
void | pushCurrentMask ()
void | popCurrentMask ()
CullingStack & | getClipSpaceCullingStack ()
CullingStack & | getProjectionCullingStack ()
CullingStack & | getModelViewCullingStack ()
CullingSet & | getCurrentCullingSet ()
const CullingSet & | getCurrentCullingSet () const
osg::Viewport * | getViewport ()
const osg::Viewport * | getViewport () const
osg::RefMatrix * | getModelViewMatrix ()
const osg::RefMatrix * | getModelViewMatrix () const
osg::RefMatrix * | getProjectionMatrix ()
const osg::RefMatrix * | getProjectionMatrix () const
osg::Matrix | getWindowMatrix () const
const osg::RefMatrix * | getMVPW ()
const osg::Vec3 & | getReferenceViewPoint () const
void | pushReferenceViewPoint (const osg::Vec3 &viewPoint)
void | popReferenceViewPoint ()
const osg::Vec3 & | getEyeLocal () const
const osg::Vec3 & | getViewPointLocal () const
const osg::Vec3 | getUpLocal () const
const osg::Vec3 | getLookVectorLocal () const
MatrixStack & | getProjectionStack ()
const MatrixStack & | getProjectionStack () const
MatrixStack & | getModelViewStack ()
const MatrixStack & | getModelViewStack () const
MatrixStack & | getMVPWStack ()
const MatrixStack & | getMVPWStack () const
Public Member Functions inherited from osg::CullSettings
| CullSettings ()
| CullSettings (ArgumentParser &arguments)
| CullSettings (const CullSettings &cs)
virtual | ~CullSettings ()
CullSettings & | operator= (const CullSettings &settings)
virtual void | setDefaults ()
void | setInheritanceMask (InheritanceMask mask)
InheritanceMask | getInheritanceMask () const
void | setCullSettings (const CullSettings &settings)
virtual void | inheritCullSettings (const CullSettings &settings)
virtual void | inheritCullSettings (const CullSettings &settings, unsigned int inheritanceMask)
void | readEnvironmentalVariables ()
void | readCommandLine (ArgumentParser &arguments)
void | setInheritanceMaskActionOnAttributeSetting (InheritanceMaskActionOnAttributeSetting action)
InheritanceMaskActionOnAttributeSetting | getInheritanceMaskActionOnAttributeSetting () const
void | applyMaskAction (unsigned int maskBit)
void | setImpostorsActive (bool active)
bool | getImpostorsActive () const
void | setImpostorPixelErrorThreshold (float numPixels)
float | getImpostorPixelErrorThreshold () const
void | setDepthSortImpostorSprites (bool doDepthSort)
bool | getDepthSortImpostorSprites () const
void | setNumberOfFrameToKeepImpostorSprites (int numFrames)
int | getNumberOfFrameToKeepImpostorSprites () const
void | setComputeNearFarMode (ComputeNearFarMode cnfm)
ComputeNearFarMode | getComputeNearFarMode () const
void | setNearFarRatio (double ratio)
double | getNearFarRatio () const
void | setCullingMode (CullingMode mode)
CullingMode | getCullingMode () const
void | setCullMask (osg::Node::NodeMask nm)
osg::Node::NodeMask | getCullMask () const
void | setCullMaskLeft (osg::Node::NodeMask nm)
osg::Node::NodeMask | getCullMaskLeft () const
void | setCullMaskRight (osg::Node::NodeMask nm)
osg::Node::NodeMask | getCullMaskRight () const
void | setLODScale (float scale)
float | getLODScale () const
void | setSmallFeatureCullingPixelSize (float value)
float | getSmallFeatureCullingPixelSize () const
void | setClampProjectionMatrixCallback (ClampProjectionMatrixCallback *cpmc)
ClampProjectionMatrixCallback * | getClampProjectionMatrixCallback ()
const ClampProjectionMatrixCallback * | getClampProjectionMatrixCallback () const
void | write (std::ostream &out)

## Protected Member Functions

CollectOccludersVisitor & | operator= (const CollectOccludersVisitor &)
void | handle_cull_callbacks_and_traverse (osg::Node &node)
void | handle_cull_callbacks_and_accept (osg::Node &node, osg::Node *acceptNode)
Protected Member Functions inherited from osg::Object
virtual | ~Object ()
Protected Member Functions inherited from osg::Referenced
virtual | ~Referenced ()
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const
void | deleteUsingDeleteHandler () const
Protected Member Functions inherited from osg::CullStack
void | computeFrustumVolume ()
osg::RefMatrix * | createOrReuseMatrix (const osg::Matrix &value)

## Protected Attributes

float | _minimumShadowOccluderVolume
unsigned | _maximumNumberOfActiveOccluders
bool | _createDrawables
ShadowVolumeOccluderSet | _occluderSet
Protected Attributes inherited from osg::NodeVisitor
VisitorType | _visitorType
unsigned int | _traversalNumber
ref_ptr< FrameStamp > | _frameStamp
TraversalMode | _traversalMode
Node::NodeMask | _traversalMask
Node::NodeMask | _nodeMaskOverride
NodePath | _nodePath
ref_ptr< DatabaseRequestHandler > | _databaseRequestHandler
ref_ptr< ImageRequestHandler > | _imageRequestHandler
osg::ref_ptr< ValueMap > | _valueMap
osg::ref_ptr< ValueStack > | _valueStack
Protected Attributes inherited from osg::Object
std::string | _name
DataVariance | _dataVariance
osg::UserDataContainer * | _userDataContainer
Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr | _observerSet
OpenThreads::Atomic | _refCount
Protected Attributes inherited from osg::CullStack
ShadowVolumeOccluderList | _occluderList
MatrixStack | _projectionStack
MatrixStack | _modelviewStack
MatrixStack | _MVPW_Stack
ViewportStack | _viewportStack
EyePointStack | _referenceViewPoints
EyePointStack | _eyePointStack
EyePointStack | _viewPointStack
CullingStack | _clipspaceCullingStack
CullingStack | _projectionCullingStack
CullingStack | _modelviewCullingStack
unsigned int | _index_modelviewCullingStack
CullingSet * | _back_modelviewCullingStack
float | _frustumVolume
unsigned int | _bbCornerNear
unsigned int | _bbCornerFar
ref_ptr< osg::RefMatrix > | _identity
MatrixList | _reuseMatrixList
unsigned int | _currentReuseMatrixIndex
Protected Attributes inherited from osg::CullSettings
InheritanceMask | _inheritanceMask
InheritanceMaskActionOnAttributeSetting | _inheritanceMaskActionOnAttributeSetting
ComputeNearFarMode | _computeNearFar
CullingMode | _cullingMode
float | _LODScale
float | _smallFeatureCullingPixelSize
ref_ptr< ClampProjectionMatrixCallback > | _clampProjectionMatrixCallback
double | _nearFarRatio
bool | _impostorActive
bool | _depthSortImpostorSprites
float | _impostorPixelErrorThreshold
int | _numFramesToKeepImpostorSprites
Node::NodeMask | _cullMask
Node::NodeMask | _cullMaskLeft
Node::NodeMask | _cullMaskRight

## Additional Inherited Members

Static Public Member Functions inherited from osg::Referenced
static OpenThreads::Mutex * | getGlobalReferencedMutex ()
static void | setDeleteHandler (DeleteHandler *handler)
static DeleteHandler * | getDeleteHandler ()
Protected Types inherited from osg::CullStack
typedef fast_back_stack< ref_ptr< Viewport > > | ViewportStack
typedef fast_back_stack< Vec3 > | EyePointStack
typedef std::vector< osg::ref_ptr< osg::RefMatrix > > | MatrixList

## Member Typedef Documentation

## ShadowVolumeOccluderSet

typedef std::set<ShadowVolumeOccluder> osg::CollectOccludersVisitor::ShadowVolumeOccluderSet

## Constructor & Destructor Documentation

## CollectOccludersVisitor()

osg::CollectOccludersVisitor::CollectOccludersVisitor | ( |  | ) |

Referenced by META_NodeVisitor(), and operator=().

## ~CollectOccludersVisitor()

virtual osg::CollectOccludersVisitor::~CollectOccludersVisitor | ( |  | ) |

virtual

## Member Function Documentation

## apply() [1/6]

virtual void osg::CollectOccludersVisitor::apply | ( | osg::LOD & | node | ) |

virtual

Reimplemented from osg::NodeVisitor.

## apply() [2/6]

virtual void osg::CollectOccludersVisitor::apply | ( | osg::Node & |  | ) |

virtual

Reimplemented from osg::NodeVisitor.

## apply() [3/6]

virtual void osg::CollectOccludersVisitor::apply | ( | osg::OccluderNode & | node | ) |

virtual

Reimplemented from osg::NodeVisitor.

## apply() [4/6]

virtual void osg::CollectOccludersVisitor::apply | ( | osg::Projection & | node | ) |

virtual

Reimplemented from osg::NodeVisitor.

## apply() [5/6]

virtual void osg::CollectOccludersVisitor::apply | ( | osg::Switch & | node | ) |

virtual

Reimplemented from osg::NodeVisitor.

## apply() [6/6]

virtual void osg::CollectOccludersVisitor::apply | ( | osg::Transform & | node | ) |

virtual

Reimplemented from osg::NodeVisitor.

## getCollectedOccluderSet() [1/2]

ShadowVolumeOccluderSet & osg::CollectOccludersVisitor::getCollectedOccluderSet | ( |  | ) |

inline

References _occluderSet.

## getCollectedOccluderSet() [2/2]

const ShadowVolumeOccluderSet & osg::CollectOccludersVisitor::getCollectedOccluderSet | ( |  | ) | const

inline

References _occluderSet.

## getCreateDrawablesOnOccludeNodes()

bool osg::CollectOccludersVisitor::getCreateDrawablesOnOccludeNodes | ( |  | ) | const

inline

References _createDrawables.

## getDistanceFromEyePoint()

virtual float osg::CollectOccludersVisitor::getDistanceFromEyePoint | ( | const Vec3 & | ,
|  | bool | ) const

virtual

Get the distance of a point from the eye point, distance value in the eye coordinate system. Note, not all NodeVisitor implement this method, it is mainly cull visitors which will implement. If the getDistanceFromEyePoint(pos) is not implemented than a default value of 0.0 is returned.

Reimplemented from osg::NodeVisitor.

## getDistanceToEyePoint()

virtual float osg::CollectOccludersVisitor::getDistanceToEyePoint | ( | const Vec3 & | ,
|  | bool | ) const

virtual

Get the distance from a point to the eye point, distance value in local coordinate system. Note, not all NodeVisitor implement this method, it is mainly cull visitors which will implement. If the getDistanceFromEyePoint(pos) is not implemented then a default value of 0.0 is returned.

Reimplemented from osg::NodeVisitor.

## getDistanceToViewPoint()

virtual float osg::CollectOccludersVisitor::getDistanceToViewPoint | ( | const Vec3 & | ,
|  | bool | ) const

virtual

Get the distance from a point to the view point, distance value in local coordinate system. Note, not all NodeVisitor implement this method, it is mainly cull visitors which will implement. If the getDistanceToViewPoint(pos) is not implemented then a default value of 0.0 is returned.

Reimplemented from osg::NodeVisitor.

## getMaximumNumberOfActiveOccluders()

unsigned int osg::CollectOccludersVisitor::getMaximumNumberOfActiveOccluders | ( |  | ) | const

inline

References _maximumNumberOfActiveOccluders.

## getMinimumShadowOccluderVolume()

float osg::CollectOccludersVisitor::getMinimumShadowOccluderVolume | ( |  | ) | const

inline

References _minimumShadowOccluderVolume.

## handle_cull_callbacks_and_accept()

void osg::CollectOccludersVisitor::handle_cull_callbacks_and_accept | ( | osg::Node & | node,
|  | osg::Node * | acceptNode )

inline protected

References osg::Node::accept(), and osg::Node::getNumChildrenWithOccluderNodes().

## handle_cull_callbacks_and_traverse()

void osg::CollectOccludersVisitor::handle_cull_callbacks_and_traverse | ( | osg::Node & | node | ) |

inline protected

References osg::Node::getNumChildrenWithOccluderNodes(), and osg::NodeVisitor::traverse().

## META_NodeVisitor()

osg::CollectOccludersVisitor::META_NodeVisitor | ( | osg | ,
|  | CollectOccludersVisitor | ) const

inline

References osg::Object::cloneType(), and CollectOccludersVisitor().

## operator=()

CollectOccludersVisitor & osg::CollectOccludersVisitor::operator= | ( | const CollectOccludersVisitor & |  | ) |

inline protected

Prevents unwanted copy construction. Prevents unwanted copy operator.

References CollectOccludersVisitor().

## removeOccludedOccluders()

void osg::CollectOccludersVisitor::removeOccludedOccluders | ( |  | ) |

Removes occluded occluders for the collected occluders list, then discards all but MaximumNumberOfActiveOccluders of occluders, discarding the occluders with the lowest shadow occluder volume.

## reset()

virtual void osg::CollectOccludersVisitor::reset | ( |  | ) |

virtual

Method to call to reset visitor. Useful if your visitor accumulates state during a traversal, and you plan to reuse the visitor. To flush that state for the next traversal: call reset() prior to each traversal.

Reimplemented from osg::NodeVisitor.

## setCollectedOccluderSet()

void osg::CollectOccludersVisitor::setCollectedOccluderSet | ( | const ShadowVolumeOccluderSet & | svol | ) |

inline

References _occluderSet.

## setCreateDrawablesOnOccludeNodes()

void osg::CollectOccludersVisitor::setCreateDrawablesOnOccludeNodes | ( | bool | flag | ) |

inline

References _createDrawables.

## setMaximumNumberOfActiveOccluders()

void osg::CollectOccludersVisitor::setMaximumNumberOfActiveOccluders | ( | unsigned int | num | ) |

inline

Sets the maximum number of occluders to have active for culling purposes.

References _maximumNumberOfActiveOccluders.

## setMinimumShadowOccluderVolume()

void osg::CollectOccludersVisitor::setMinimumShadowOccluderVolume | ( | float | vol | ) |

inline

Sets the minimum shadow occluder volume that an active occluder must have. vol is units relative the clip space volume where 1.0 is the whole clip space.

References _minimumShadowOccluderVolume.

## Member Data Documentation

## _createDrawables

bool osg::CollectOccludersVisitor::_createDrawables

protected

Referenced by getCreateDrawablesOnOccludeNodes(), and setCreateDrawablesOnOccludeNodes().

## _maximumNumberOfActiveOccluders

unsigned osg::CollectOccludersVisitor::_maximumNumberOfActiveOccluders

protected

Referenced by getMaximumNumberOfActiveOccluders(), and setMaximumNumberOfActiveOccluders().

## _minimumShadowOccluderVolume

float osg::CollectOccludersVisitor::_minimumShadowOccluderVolume

protected

Referenced by getMinimumShadowOccluderVolume(), and setMinimumShadowOccluderVolume().

## _occluderSet

ShadowVolumeOccluderSet osg::CollectOccludersVisitor::_occluderSet

protected

Referenced by getCollectedOccluderSet(), getCollectedOccluderSet(), and setCollectedOccluderSet().

The documentation for this class was generated from the following file:

- CollectOccludersVisitor