#include <OgreShadowCaster.h>
Inheritance diagram for Ogre::ShadowCaster:

Public Types | |
| typedef std::vector< ShadowRenderable * > | ShadowRenderableList |
| typedef VectorIterator< ShadowRenderableList > | ShadowRenderableListIterator |
Public Member Functions | |
| virtual | ~ShadowCaster () |
| virtual bool | getCastShadows (void) const=0 |
| Returns whether or not this object currently casts a shadow. | |
| virtual EdgeData * | getEdgeList (void)=0 |
| Returns details of the edges which might be used to determine a silhouette. | |
| virtual const AxisAlignedBox & | getWorldBoundingBox (bool derive=false) const=0 |
| Get the world bounding box of the caster. | |
| virtual const AxisAlignedBox & | getLightCapBounds (void) const=0 |
| Gets the world space bounding box of the light cap. | |
| virtual const AxisAlignedBox & | getDarkCapBounds (const Light &light, Real dirLightExtrusionDist) const=0 |
| Gets the world space bounding box of the dark cap, as extruded using the light provided. | |
| virtual ShadowRenderableListIterator | getShadowVolumeRenderableIterator (ShadowTechnique shadowTechnique, const Light *light, HardwareIndexBufferSharedPtr *indexBuffer, bool extrudeVertices, Real extrusionDistance, unsigned long flags=0)=0 |
| Gets an iterator over the renderables required to render the shadow volume. | |
| virtual Real | getPointExtrusionDistance (const Light *l) const=0 |
| Get the distance to extrude for a point/spot light. | |
Static Public Member Functions | |
| void | extrudeVertices (HardwareVertexBufferSharedPtr vertexBuffer, size_t originalVertexCount, const Vector4 &lightPos, Real extrudeDist) |
| Utility method for extruding vertices based on a light. | |
Protected Member Functions | |
| Real | getExtrusionDistance (const Vector3 &objectPos, const Light *light) const |
| Helper moethod for calculating extrusion distance. | |
| virtual void | updateEdgeListLightFacing (EdgeData *edgeData, const Vector4 &lightPos) |
| Tells the caster to perform the tasks necessary to update the edge data's light listing. | |
| virtual void | generateShadowVolume (EdgeData *edgeData, HardwareIndexBufferSharedPtr indexBuffer, const Light *light, ShadowRenderableList &shadowRenderables, unsigned long flags) |
| Generates the indexes required to render a shadow volume into the index buffer which is passed in, and updates shadow renderables to use it. | |
| virtual void | extrudeBounds (AxisAlignedBox &box, const Vector4 &lightPos, Real extrudeDist) const |
| Utility method for extruding a bounding box. | |
Definition at line 104 of file OgreShadowCaster.h.
|
|
Definition at line 121 of file OgreShadowCaster.h. |
|
|
Definition at line 122 of file OgreShadowCaster.h. |
|
|
Definition at line 107 of file OgreShadowCaster.h. |
|
||||||||||||||||
|
Utility method for extruding a bounding box.
|
|
||||||||||||||||||||
|
Utility method for extruding vertices based on a light.
|
|
||||||||||||||||||||||||
|
Generates the indexes required to render a shadow volume into the index buffer which is passed in, and updates shadow renderables to use it.
|
|
|
Returns whether or not this object currently casts a shadow.
Implemented in Ogre::MovableObject. |
|
||||||||||||
|
Gets the world space bounding box of the dark cap, as extruded using the light provided.
Implemented in Ogre::MovableObject. |
|
|
Returns details of the edges which might be used to determine a silhouette.
Implemented in Ogre::Entity, Ogre::MovableObject, and Ogre::StaticGeometry::Region. |
|
||||||||||||
|
Helper moethod for calculating extrusion distance.
|
|
|
Gets the world space bounding box of the light cap.
Implemented in Ogre::MovableObject. |
|
|
Get the distance to extrude for a point/spot light.
Implemented in Ogre::MovableObject. |
|
||||||||||||||||||||||||||||
|
Gets an iterator over the renderables required to render the shadow volume.
Implemented in Ogre::Entity, Ogre::MovableObject, and Ogre::StaticGeometry::Region. |
|
|
Get the world bounding box of the caster.
Implemented in Ogre::Entity, and Ogre::MovableObject. |
|
||||||||||||
|
Tells the caster to perform the tasks necessary to update the edge data's light listing. Can be overridden if the subclass needs to do additional things.
|
Copyright © 2000-2005 by The OGRE Team
Last modified Sun Nov 20 12:39:46 2005