Inheritance:
Public Methods
-
CollectOccludersVisitor()
-
virtual ~CollectOccludersVisitor()
-
virtual CollectOccludersVisitor* cloneType() const
-
virtual void reset()
-
virtual float getDistanceToEyePoint(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)
- Set the minimum shadow occluder volume that an active occluder must have.
-
float getMinimumShadowOccluderVolume() const
-
void setMaximumNumberOfActiveOccluders(unsigned int num)
- Set the maximum number of occluders to have active for culling purposes
-
unsigned int getMaximumNumberOfActiveOccluders() const
-
void setCreateDrawablesOnOccludeNodes(bool flag)
-
bool getCreateDrawablesOnOccludeNodes() const
-
void setCollectedOcculderList(const ShadowVolumeOccluderSet& svol)
-
ShadowVolumeOccluderSet& getCollectedOccluderSet()
-
const ShadowVolumeOccluderSet& getCollectedOccluderSet() const
-
void removeOccludedOccluders()
- remove occluded occluders for the collected occluders list, and then discard of all but MaximumNumberOfActiveOccluders of occluders, discarding the occluders with the lowests shadow occluder volume
-
CollectOccludersVisitor& operator = (const CollectOccludersVisitor&)
- prevent unwanted copy operator
Public
-
typedef std::set<ShadowVolumeOccluder> ShadowVolumeOccluderSet
Protected Fields
-
float _minimumShadowOccluderVolume
-
unsigned _maximumNumberOfActiveOccluders
-
bool _createDrawables
-
ShadowVolumeOccluderSet _occluderSet
Protected Methods
-
inline void handle_cull_callbacks_and_traverse(osg::Node& node)
-
inline void handle_cull_callbacks_and_accept(osg::Node& node, osg::Node* acceptNode)
Protected
-
prevent unwanted copy construction
Public Classes
-
enum TraversalMode
-
enum VisitorType
-
class DatabaseRequestHandler: public osg::Referenced
- callback for managing database paging, such as generated by PagedLOD nodes
Public Methods
-
inline void setVisitorType(VisitorType type)
-
inline VisitorType getVisitorType() const
-
inline void setTraversalNumber(int fn)
-
inline int getTraversalNumber() const
-
inline void setFrameStamp(FrameStamp* fs)
-
inline const FrameStamp* getFrameStamp() const
-
inline void setTraversalMask(Node::NodeMask mask)
-
inline Node::NodeMask getTraversalMask() const
-
inline void setNodeMaskOverride(Node::NodeMask mask)
-
inline Node::NodeMask getNodeMaskOverride() const
-
inline bool validNodeMask(const osg::Node& node) const
-
inline void setTraversalMode(TraversalMode mode)
-
inline TraversalMode getTraversalMode() const
-
inline void setUserData(Referenced* obj)
-
inline Referenced* getUserData()
-
inline const Referenced* getUserData() const
-
inline void traverse(Node& node)
-
inline void pushOntoNodePath(Node* node)
-
inline void popFromNodePath()
-
NodePath& getNodePath()
-
const NodePath& getNodePath() const
-
virtual osg::Vec3 getEyePoint() const
-
void setDatabaseRequestHandler(DatabaseRequestHandler* handler)
-
DatabaseRequestHandler* getDatabaseRequestHandler()
-
const DatabaseRequestHandler* getDatabaseRequestHandler() const
Protected Fields
-
VisitorType _visitorType
-
int _traversalNumber
-
ref_ptr<FrameStamp> _frameStamp
-
TraversalMode _traversalMode
-
Node::NodeMask _traversalMask
-
Node::NodeMask _nodeMaskOverride
-
NodePath _nodePath
-
ref_ptr<Referenced> _userData
-
ref_ptr<DatabaseRequestHandler> _databaseRequestHandler
Public Methods
-
static void setDeleteHandler(DeleteHandler* handler)
-
static DeleteHandler* getDeleteHandler()
-
inline void ref() const
-
inline void unref_nodelete() const
-
inline int referenceCount() const
-
inline void unref() const
Protected Fields
-
mutable OpenThreads::Mutex _refMutex
-
mutable int _refCount
Public Methods
-
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)
-
void popModelViewMatrix()
-
inline float getFrustumVolume()
-
float pixelSize(const Vec3& v, float radius) const
-
float pixelSize(const BoundingSphere& bs) const
-
inline void disableAndPushOccludersCurrentMask(NodePath& nodePath)
-
inline void popOccludersCurrentMask(NodePath& nodePath)
-
inline bool isCulled(const std::vector<Vec3>& vertices)
-
inline bool isCulled(const BoundingBox& bb)
-
inline bool isCulled(const BoundingSphere& bs)
-
inline bool isCulled(const osg::Node& node)
-
inline void pushCurrentMask()
-
inline void popCurrentMask()
-
inline CullingStack& getClipSpaceCullingStack()
-
inline CullingStack& getProjectionCullingStack()
-
inline CullingStack& getModelViewCullingStack()
-
inline CullingSet& getCurrentCullingSet()
-
inline const CullingSet& getCurrentCullingSet() const
-
inline osg::Viewport* getViewport()
-
inline osg::RefMatrix& getModelViewMatrix()
-
inline osg::RefMatrix& getProjectionMatrix()
-
inline osg::Matrix getWindowMatrix()
-
inline const osg::RefMatrix& getMVPW()
-
inline const osg::Vec3& getEyeLocal() const
-
inline const osg::Vec3 getUpLocal() const
-
inline const osg::Vec3 getLookVectorLocal() const
-
inline Viewport* getViewport()
-
inline RefMatrix& getModelViewMatrix()
-
inline RefMatrix& getProjectionMatrix()
-
inline Matrix getWindowMatrix()
-
inline const RefMatrix& getMVPW()
-
inline RefMatrix* createOrReuseMatrix(const osg::Matrix& value)
Public
-
typedef std::vector<ShadowVolumeOccluder> OccluderList
-
typedef std::vector< CullingSet > CullingStack
Protected Fields
-
ShadowVolumeOccluderList _occluderList
-
MatrixStack _projectionStack
-
MatrixStack _modelviewStack
-
MatrixStack _MVPW_Stack
-
ViewportStack _viewportStack
-
EyePointStack _eyePointStack
-
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 Methods
-
void pushCullingSet()
-
void popCullingSet()
-
void computeFrustumVolume()
-
inline osg::RefMatrix* createOrReuseMatrix(const osg::Matrix& value)
Protected
-
typedef fast_back_stack< ref_ptr<RefMatrix> > MatrixStack
-
typedef fast_back_stack<ref_ptr<Viewport> > ViewportStack
-
typedef fast_back_stack<Vec3> EyePointStack
-
typedef std::vector< osg::ref_ptr<osg::RefMatrix> > MatrixList
Public Classes
-
enum ComputeNearFarMode
-
enum CullingModeValues
-
struct ClampProjectionMatrixCallback: public osg::Referenced
Public Methods
-
void setCullSettings(const CullSettings& settings)
-
void setDefaults()
-
void readEnvironmentalVariables()
-
void readCommandLine(ArgumentParser& arguments)
-
void setImpostorsActive(bool active)
-
bool getImpostorsActive() const
-
void setImpostorPixelErrorThreshold(float numPixels)
-
float getImpostorPixelErrorThreshold() const
-
void setDepthSortImpostorSprites(bool doDepthSort)
-
bool setDepthSortImpostorSprites() 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(const osg::Node::NodeMask nm)
-
osg::Node::NodeMask getCullMask() const
-
void setCullMaskLeft(const osg::Node::NodeMask nm)
-
osg::Node::NodeMask getCullMaskLeft() const
-
void setCullMaskRight(const osg::Node::NodeMask nm)
-
osg::Node::NodeMask getCullMaskRight() const
-
void setLODScale(float bias)
-
float getLODScale() const
-
void setSmallFeatureCullingPixelSize(float value)
-
float getSmallFeatureCullingPixelSize() const
-
void setClampProjectionMatrixCallback(ClampProjectionMatrixCallback* cpmc)
-
ClampProjectionMatrixCallback* getClampProjectionMatrixCallback()
-
const ClampProjectionMatrixCallback* getClampProjectionMatrixCallback() const
Public
-
typedef unsigned int CullingMode
Protected Fields
-
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
Documentation
- typedef std::set<ShadowVolumeOccluder> ShadowVolumeOccluderSet
- CollectOccludersVisitor()
- virtual ~CollectOccludersVisitor()
- virtual CollectOccludersVisitor* cloneType() const
- virtual void reset()
- virtual float getDistanceToEyePoint(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)
- Set the minimum shadow occluder volume that an active occluder must have.
volume is units relative the clip space volume where 1.0 is the whole clip space.
- float getMinimumShadowOccluderVolume() const
- void setMaximumNumberOfActiveOccluders(unsigned int num)
- Set the maximum number of occluders to have active for culling purposes
- unsigned int getMaximumNumberOfActiveOccluders() const
- void setCreateDrawablesOnOccludeNodes(bool flag)
- bool getCreateDrawablesOnOccludeNodes() const
- void setCollectedOcculderList(const ShadowVolumeOccluderSet& svol)
- ShadowVolumeOccluderSet& getCollectedOccluderSet()
- const ShadowVolumeOccluderSet& getCollectedOccluderSet() const
- void removeOccludedOccluders()
- remove occluded occluders for the collected occluders list,
and then discard of all but MaximumNumberOfActiveOccluders of occluders,
discarding the occluders with the lowests shadow occluder volume
- prevent unwanted copy construction
- prevent unwanted copy construction
- CollectOccludersVisitor& operator = (const CollectOccludersVisitor&)
- prevent unwanted copy operator
- inline void handle_cull_callbacks_and_traverse(osg::Node& node)
- inline void handle_cull_callbacks_and_accept(osg::Node& node, osg::Node* acceptNode)
- float _minimumShadowOccluderVolume
- unsigned _maximumNumberOfActiveOccluders
- bool _createDrawables
- ShadowVolumeOccluderSet _occluderSet
- This class has no child classes.
Alphabetic index HTML hierarchy of classes or Java
This page was generated with the help of DOC++.