14#ifndef OSGSHADOW_SHADOWEDTECHNIQUE
15#define OSGSHADOW_SHADOWEDTECHNIQUE 1
39 virtual const char*
libraryName()
const {
return "osgShadow"; }\
40 virtual const char*
className()
const {
return "ShadowTechnique"; }
Vec3f Vec3
Definition Vec3:21
The osgShadow library is a NodeKit that extends the core scene graph to add support for a range of sh...
Definition ConvexPolyhedron:33
Deprecated.
Definition Callback:215
Copy Op(erator) used to control whether shallow or deep copy is used during copy construction and clo...
Definition CopyOp:41
@ SHALLOW_COPY
Definition CopyOp:47
Base class for all internal nodes in the scene graph.
Definition Node:72
Visitor for type safe operations on osg::Nodes.
Definition NodeVisitor:82
Base class/standard interface for objects which require IO support, cloning and reference counting.
Definition Object:61
Encapsulates the current applied OpenGL modes, attributes and vertex arrays settings,...
Definition State:80
virtual void update(osg::NodeVisitor &nv)
run the update traversal of the ShadowedScene and update any local cached data structures.
virtual const char * className() const
return the name of the object's class type.
Definition ShadowTechnique:40
virtual void setShadowedScene(ShadowedScene *ss)
ShadowedScene * _shadowedScene
Definition ShadowTechnique:94
virtual void releaseGLObjects(osg::State *=0) const =0
If State is non-zero, this function releases any associated OpenGL objects for the specified graphics...
ShadowTechnique(const ShadowTechnique &es, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY)
bool _dirty
Definition ShadowTechnique:95
virtual void cull(osgUtil::CullVisitor &cv)
run the cull traversal of the ShadowedScene and set up the rendering for this ShadowTechnique.
virtual void cleanSceneGraph()
Clean scene graph from any shadow technique specific nodes, state and drawables.
virtual void init()
initialize the ShadowedScene and local cached data structures.
const ShadowedScene * getShadowedScene() const
Definition ShadowTechnique:46
virtual void traverse(osg::NodeVisitor &nv)
virtual void dirty()
Dirty so that cached data structures are updated.
Definition ShadowTechnique:63
virtual bool isSameKindAs(const osg::Object *obj) const
Definition ShadowTechnique:38
virtual const char * libraryName() const
return the name of the object's library.
Definition ShadowTechnique:39
virtual void resizeGLObjectBuffers(unsigned int maxSize)=0
Resize any per context GLObject buffers to specified size.
friend class ShadowedScene
Definition ShadowTechnique:92
osg::Vec3 computeOrthogonalVector(const osg::Vec3 &direction) const
virtual ~ShadowTechnique()
ShadowedScene * getShadowedScene()
Definition ShadowTechnique:44
virtual void operator()(osg::Node *, osg::NodeVisitor *nv)
Callback method called by the NodeVisitor when visiting a node.
CameraCullCallback(ShadowTechnique *st)
ShadowTechnique * _shadowTechnique
Definition ShadowTechnique:85
Basic NodeVisitor implementation for rendering a scene.
Definition CullVisitor:49
#define NULL
Definition Export:55
#define OSGSHADOW_EXPORT
Definition Export:39