openscenegraph
Public Types | Public Member Functions | Protected Attributes
osg::ShadowVolumeOccluder Class Reference

List of all members.

Public Types

typedef std::vector< PolytopeHoleList

Public Member Functions

 ShadowVolumeOccluder (const ShadowVolumeOccluder &svo)
 ShadowVolumeOccluder ()
bool operator< (const ShadowVolumeOccluder &svo) const
bool computeOccluder (const NodePath &nodePath, const ConvexPlanarOccluder &occluder, CullStack &cullStack, bool createDrawables=false)
void disableResultMasks ()
void pushCurrentMask ()
void popCurrentMask ()
bool matchProjectionMatrix (const osg::Matrix &matrix) const
void setNodePath (NodePath &nodePath)
NodePathgetNodePath ()
const NodePathgetNodePath () const
float getVolume () const
PolytopegetOccluder ()
const PolytopegetOccluder () const
HoleListgetHoleList ()
const HoleListgetHoleList () const
bool contains (const std::vector< Vec3 > &vertices)
bool contains (const BoundingSphere &bound)
bool contains (const BoundingBox &bound)
void transformProvidingInverse (const osg::Matrix &matrix)

Protected Attributes

float _volume
NodePath _nodePath
ref_ptr< const RefMatrix_projectionMatrix
Polytope _occluderVolume
HoleList _holeList

Detailed Description

ShadowVolumeOccluder is a helper class for implementing shadow occlusion culling.


Member Typedef Documentation


Constructor & Destructor Documentation


Member Function Documentation

bool osg::ShadowVolumeOccluder::computeOccluder ( const NodePath nodePath,
const ConvexPlanarOccluder occluder,
CullStack cullStack,
bool  createDrawables = false 
)

compute the shadow volume occluder.

bool osg::ShadowVolumeOccluder::contains ( const std::vector< Vec3 > &  vertices)

return true if the specified vertex list is contained entirely within this shadow occluder volume.

return true if the specified bounding sphere is contained entirely within this shadow occluder volume.

return true if the specified bounding box is contained entirely within this shadow occluder volume.

return the list of holes.

return the const list of holes.

return the occluder polytope.

return the const occluder polytope.

float osg::ShadowVolumeOccluder::getVolume ( ) const [inline]

get the volume of the occluder minus its holes, in eye coords, the volume is normalized by dividing by the volume of the view frustum in eye coords.

Referenced by operator<().

bool osg::ShadowVolumeOccluder::matchProjectionMatrix ( const osg::Matrix matrix) const [inline]

return true if the matrix passed in matches the projection matrix that this ShadowVolumeOccluder is associated with.

bool osg::ShadowVolumeOccluder::operator< ( const ShadowVolumeOccluder svo) const [inline]

References getVolume().

Set the NodePath which describes which node in the scene graph that this occluder is attached to.


Member Data Documentation


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