Public Types | Public Member Functions | Protected Member Functions | Protected Attributes

osg::CollectOccludersVisitor Class Reference

Inheritance diagram for osg::CollectOccludersVisitor:
Inheritance graph
[legend]

List of all members.

Public Types

typedef std::set
< ShadowVolumeOccluder
ShadowVolumeOccluderSet

Public Member Functions

 CollectOccludersVisitor ()
virtual ~CollectOccludersVisitor ()
 META_NodeVisitor ("osg","CollectOccludersVisitor") virtual CollectOccludersVisitor *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)
 Sets the minimum shadow occluder volume that an active occluder must have.
float getMinimumShadowOccluderVolume () const
void setMaximumNumberOfActiveOccluders (unsigned int num)
 Sets the maximum number of occluders to have active for culling purposes.
unsigned int getMaximumNumberOfActiveOccluders () const
void setCreateDrawablesOnOccludeNodes (bool flag)
bool getCreateDrawablesOnOccludeNodes () const
void setCollectedOccluderSet (const ShadowVolumeOccluderSet &svol)
ShadowVolumeOccluderSetgetCollectedOccluderSet ()
const ShadowVolumeOccluderSetgetCollectedOccluderSet () const
void 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.

Protected Member Functions

CollectOccludersVisitoroperator= (const CollectOccludersVisitor &)
 Prevents unwanted copy construction.
void handle_cull_callbacks_and_traverse (osg::Node &node)
void handle_cull_callbacks_and_accept (osg::Node &node, osg::Node *acceptNode)

Protected Attributes

float _minimumShadowOccluderVolume
unsigned _maximumNumberOfActiveOccluders
bool _createDrawables
ShadowVolumeOccluderSet _occluderSet

Member Typedef Documentation


Constructor & Destructor Documentation

osg::CollectOccludersVisitor::CollectOccludersVisitor (  ) 
virtual osg::CollectOccludersVisitor::~CollectOccludersVisitor (  )  [virtual]

Member Function Documentation

virtual void osg::CollectOccludersVisitor::apply ( osg::Node  )  [virtual]
virtual void osg::CollectOccludersVisitor::apply ( osg::Projection node  )  [virtual]
virtual void osg::CollectOccludersVisitor::apply ( osg::Switch node  )  [virtual]
virtual void osg::CollectOccludersVisitor::apply ( osg::LOD node  )  [virtual]
virtual void osg::CollectOccludersVisitor::apply ( osg::OccluderNode node  )  [virtual]
virtual void osg::CollectOccludersVisitor::apply ( osg::Transform node  )  [virtual]
ShadowVolumeOccluderSet& osg::CollectOccludersVisitor::getCollectedOccluderSet (  )  [inline]
const ShadowVolumeOccluderSet& osg::CollectOccludersVisitor::getCollectedOccluderSet (  )  const [inline]
bool osg::CollectOccludersVisitor::getCreateDrawablesOnOccludeNodes (  )  const [inline]
virtual float osg::CollectOccludersVisitor::getDistanceFromEyePoint ( const Vec3 pos,
bool  withLODScale 
) const [virtual]
virtual float osg::CollectOccludersVisitor::getDistanceToEyePoint ( const Vec3 pos,
bool  withLODScale 
) const [virtual]
virtual float osg::CollectOccludersVisitor::getDistanceToViewPoint ( const Vec3 pos,
bool  withLODScale 
) const [virtual]
unsigned int osg::CollectOccludersVisitor::getMaximumNumberOfActiveOccluders (  )  const [inline]
float osg::CollectOccludersVisitor::getMinimumShadowOccluderVolume (  )  const [inline]
void osg::CollectOccludersVisitor::handle_cull_callbacks_and_accept ( osg::Node node,
osg::Node acceptNode 
) [inline, protected]
void osg::CollectOccludersVisitor::handle_cull_callbacks_and_traverse ( osg::Node node  )  [inline, protected]
osg::CollectOccludersVisitor::META_NodeVisitor ( "osg"  ,
"CollectOccludersVisitor"   
) const [inline]
CollectOccludersVisitor& osg::CollectOccludersVisitor::operator= ( const CollectOccludersVisitor  )  [inline, protected]

Prevents unwanted copy construction.

Prevents unwanted copy operator.

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.

virtual void osg::CollectOccludersVisitor::reset (  )  [virtual]

Reimplemented from osg::CullStack.

void osg::CollectOccludersVisitor::setCollectedOccluderSet ( const ShadowVolumeOccluderSet svol  )  [inline]
void osg::CollectOccludersVisitor::setCreateDrawablesOnOccludeNodes ( bool  flag  )  [inline]
void osg::CollectOccludersVisitor::setMaximumNumberOfActiveOccluders ( unsigned int  num  )  [inline]

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

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.


Member Data Documentation


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

osg logo
Generated at Wed Dec 15 2010 00:58:48 for the OpenSceneGraph by doxygen 1.7.1.