#include <OgreTerrainRenderable.h>
Inheritance diagram for Ogre::TerrainRenderable:
Public Types | |
enum | Neighbor { NORTH = 0, SOUTH = 1, EAST = 2, WEST = 3, HERE = 4 } |
typedef std::vector< ShadowRenderable * > | ShadowRenderableList |
typedef VectorIterator< ShadowRenderableList > | ShadowRenderableListIterator |
Public Member Functions | |
TerrainRenderable (const String &name, TerrainSceneManager *tsm) | |
~TerrainRenderable () | |
void | deleteGeometry () |
void | initialise (int startx, int startz, Real *pageHeightData) |
Initializes the TerrainRenderable. | |
virtual const String & | getMovableType (void) const |
Returns the type of the movable. | |
const AxisAlignedBox & | getBoundingBox (void) const |
Returns the bounding box of this TerrainRenderable. | |
virtual void | _notifyCurrentCamera (Camera *cam) |
Updates the level of detail to be used for rendering this TerrainRenderable based on the passed in Camera. | |
virtual void | _updateRenderQueue (RenderQueue *queue) |
Internal method by which the movable object must add Renderable subclass instances to the rendering queue. | |
virtual void | getRenderOperation (RenderOperation &rend) |
Constructs a RenderOperation to render the TerrainRenderable. | |
virtual const MaterialPtr & | getMaterial (void) const |
Retrieves a weak reference to the material this renderable object uses. | |
virtual void | getWorldTransforms (Matrix4 *xform) const |
Gets the world transform matrix / matrices for this renderable object. | |
virtual const Quaternion & | getWorldOrientation (void) const |
Gets the worldspace orientation of this renderable; this is used in order to more efficiently update parameters to vertex & fragment programs, since inverting Quaterion and Vector in order to derive object-space positions / directions for cameras and lights is much more efficient than inverting a complete 4x4 matrix, and also eliminates problems introduced by scaling. | |
virtual const Vector3 & | getWorldPosition (void) const |
Gets the worldspace orientation of this renderable; this is used in order to more efficiently update parameters to vertex & fragment programs, since inverting Quaterion and Vector in order to derive object-space positions / directions for cameras and lights is much more efficient than inverting a complete 4x4 matrix, and also eliminates problems introduced by scaling. | |
int | getRenderLevel () const |
Returns the mipmap level that will be rendered for this frame. | |
void | setForcedRenderLevel (int i) |
Forces the LOD to the given level from this point on. | |
void | _getNormalAt (float x, float y, Vector3 *result) |
Calculates the normal at the given location. | |
float | getHeightAt (float x, float y) |
Returns the terrain height at the given coordinates. | |
bool | intersectSegment (const Vector3 &start, const Vector3 &end, Vector3 *result) |
Intersects the segment witht he terrain tile. | |
void | _setNeighbor (Neighbor n, TerrainRenderable *t) |
Sets the appropriate neighbor for this TerrainRenderable. | |
TerrainRenderable * | _getNeighbor (Neighbor n) |
Returns the neighbor TerrainRenderable. | |
void | setMaterial (const MaterialPtr &m) |
void | _calculateNormals () |
Calculates static normals for lighting the terrain. | |
void | _generateVertexLighting (const Vector3 &sun, ColourValue ambient) |
Generates terrain shadows and lighting using vertex colors. | |
Real | getSquaredViewDepth (const Camera *cam) const |
Overridden, see Renderable. | |
Real | getBoundingRadius (void) const |
Overridden from MovableObject. | |
const LightList & | getLights (void) const |
| |
void | _updateCustomGpuParameter (const GpuProgramParameters::AutoConstantEntry &constantEntry, GpuProgramParameters *params) const |
Overridden from Renderable to allow the morph LOD entry to be set. | |
uint32 | getTypeFlags (void) const |
MovableObject. | |
virtual Technique * | getTechnique (void) const |
Retrieves a pointer to the Material Technique this renderable object uses. | |
virtual unsigned short | getNumWorldTransforms (void) const |
Returns the number of world transform matrices this renderable requires. | |
virtual bool | useIdentityProjection (void) const |
Returns whether or not to use an 'identity' projection. | |
virtual bool | useIdentityView (void) const |
Returns whether or not to use an 'identity' projection. | |
virtual bool | getNormaliseNormals (void) const |
Returns whether or not this Renderable wishes the hardware to normalise normals. | |
virtual const PlaneList & | getClipPlanes () const |
virtual bool | getCastsShadows (void) const |
Method which reports whether this renderable would normally cast a shadow. | |
void | setCustomParameter (size_t index, const Vector4 &value) |
Sets a custom parameter for this Renderable, which may be used to drive calculations for this specific Renderable, like GPU program parameters. | |
const Vector4 & | getCustomParameter (size_t index) const |
Gets the custom value associated with this Renderable at the given index. | |
virtual void | setPolygonModeOverrideable (bool override) |
Sets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting. | |
virtual bool | getPolygonModeOverrideable (void) const |
Gets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting. | |
virtual void | _notifyCreator (MovableObjectFactory *fact) |
Notify the object of it's creator (internal use only). | |
virtual void | _notifyManager (SceneManager *man) |
Notify the object of it's manager (internal use only). | |
virtual SceneManager * | _getManager (void) const |
Get the manager of this object, if any (internal use only). | |
virtual const String & | getName (void) const |
Returns the name of this object. | |
virtual Node * | getParentNode (void) const |
Returns the node to which this object is attached. | |
virtual SceneNode * | getParentSceneNode (void) const |
Returns the scene node to which this object is attached. | |
virtual void | _notifyAttached (Node *parent, bool isTagPoint=false) |
Internal method called to notify the object that it has been attached to a node. | |
virtual bool | isAttached (void) const |
Returns true if this object is attached to a SceneNode or TagPoint. | |
virtual bool | isInScene (void) const |
Returns true if this object is attached to a SceneNode or TagPoint, and this SceneNode / TagPoint is currently in an active part of the scene graph. | |
virtual const AxisAlignedBox & | getWorldBoundingBox (bool derive=false) const |
Retrieves the axis-aligned bounding box for this object in world coordinates. | |
virtual const Sphere & | getWorldBoundingSphere (bool derive=false) const |
Retrieves the worldspace bounding sphere for this object. | |
virtual void | setVisible (bool visible) |
Tells this object whether to be visible or not, if it has a renderable component. | |
virtual bool | isVisible (void) const |
Returns whether or not this object is supposed to be visible or not. | |
virtual void | setRenderingDistance (Real dist) |
Sets the distance at which the object is no longer rendered. | |
virtual Real | getRenderingDistance (void) const |
Gets the distance at which batches are no longer rendered. | |
virtual void | setUserObject (UserDefinedObject *obj) |
Call this to associate your own custom user object instance with this MovableObject. | |
virtual UserDefinedObject * | getUserObject (void) |
Retrieves a pointer to a custom application object associated with this movable by an earlier call to setUserObject. | |
virtual void | setUserAny (const Any &anything) |
Sets any kind of user value on this object. | |
virtual const Any & | getUserAny (void) const |
Retrieves the custom user value associated with this object. | |
virtual void | setRenderQueueGroup (uint8 queueID) |
Sets the render queue group this entity will be rendered through. | |
virtual uint8 | getRenderQueueGroup (void) const |
Gets the queue group for this entity, see setRenderQueueGroup for full details. | |
virtual Matrix4 | _getParentNodeFullTransform (void) const |
return the full transformation of the parent sceneNode or the attachingPoint node | |
virtual void | setQueryFlags (uint32 flags) |
Sets the query flags for this object. | |
virtual void | addQueryFlags (uint32 flags) |
As setQueryFlags, except the flags passed as parameters are appended to the existing flags on this object. | |
virtual void | removeQueryFlags (unsigned long flags) |
As setQueryFlags, except the flags passed as parameters are removed from the existing flags on this object. | |
virtual uint32 | getQueryFlags (void) const |
Returns the query flags relevant for this object. | |
virtual void | setVisibilityFlags (uint32 flags) |
Sets the visiblity flags for this object. | |
virtual void | addVisibilityFlags (uint32 flags) |
As setVisibilityFlags, except the flags passed as parameters are appended to the existing flags on this object. | |
virtual void | removeVisibilityFlags (uint32 flags) |
As setVisibilityFlags, except the flags passed as parameters are removed from the existing flags on this object. | |
virtual uint32 | getVisibilityFlags (void) const |
Returns the visibility flags relevant for this object. | |
EdgeData * | getEdgeList (void) |
Define a default implementation of method from ShadowCaster which implements no shadows. | |
ShadowRenderableListIterator | getShadowVolumeRenderableIterator (ShadowTechnique shadowTechnique, const Light *light, HardwareIndexBufferSharedPtr *indexBuffer, bool extrudeVertices, Real extrusionDist, unsigned long flags=0) |
Define a default implementation of method from ShadowCaster which implements no shadows. | |
const AxisAlignedBox & | getLightCapBounds (void) const |
Overridden member from ShadowCaster. | |
const AxisAlignedBox & | getDarkCapBounds (const Light &light, Real dirLightExtrusionDist) const |
Overridden member from ShadowCaster. | |
void | setCastShadows (bool enabled) |
Sets whether or not this object will cast shadows. | |
bool | getCastShadows (void) const |
Returns whether shadow casting is enabled for this object. | |
Real | getPointExtrusionDistance (const Light *l) const |
Get the distance to extrude for a point/spot light. | |
const StringVector & | getAnimableValueNames (void) const |
Gets a list of animable value names for this object. | |
virtual AnimableValuePtr | createAnimableValue (const String &valueName) |
Create a reference-counted AnimableValuePtr for the named value. | |
Static Public Member Functions | |
void | setDefaultQueryFlags (uint32 flags) |
Set the default query flags for all future MovableObject instances. | |
uint32 | getDefaultQueryFlags (uint32 flags) |
Get the default query flags for all future MovableObject instances. | |
void | setDefaultVisibilityFlags (uint32 flags) |
Set the default visibility flags for all future MovableObject instances. | |
uint32 | getDefaultVisibilityFlags (uint32 flags) |
Get the default visibility flags for all future MovableObject instances. | |
void | extrudeVertices (HardwareVertexBufferSharedPtr vertexBuffer, size_t originalVertexCount, const Vector4 &lightPos, Real extrudeDist) |
Utility method for extruding vertices based on a light. | |
Protected Types | |
typedef std::map< size_t, Vector4 > | CustomParameterMap |
typedef std::map< String, StringVector > | AnimableDictionaryMap |
Protected Member Functions | |
size_t | _index (int x, int z) const |
Returns the index into the height array for the given coords. | |
float | _vertex (int x, int z, int n) |
Returns the vertex coord for the given coordinates. | |
int | _numNeighbors () const |
bool | _hasNeighborRenderLevel (int i) const |
void | _adjustRenderLevel (int i) |
bool | _checkSize (int n) |
void | _calculateMinLevelDist2 (Real C) |
Real | _calculateCFactor () |
IndexData * | getIndexData (void) |
Gets the index data for this tile based on current settings. | |
IndexData * | generateTriStripIndexes (unsigned int stitchFlags) |
Internal method for generating stripified terrain indexes. | |
IndexData * | generateTriListIndexes (unsigned int stitchFlags) |
Internal method for generating triangle list terrain indexes. | |
int | stitchEdge (Neighbor neighbor, int hiLOD, int loLOD, bool omitFirstTri, bool omitLastTri, unsigned short **ppIdx) |
Utility method to generate stitching indexes on the edge of a tile. | |
HardwareVertexBufferSharedPtr | createDeltaBuffer (void) |
Create a blank delta buffer for usein morphing. | |
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. | |
virtual const String & | getAnimableDictionaryName (void) const |
Get the name of the animable dictionary for this class. | |
void | createAnimableDictionary (void) const |
Internal method for creating a dictionary of animable value names for the class, if it does not already exist. | |
StringVector & | getAnimableValueNames (void) |
Get an updateable reference to animable value list. | |
virtual void | initialiseAnimableDictionary (StringVector &vec) const |
Internal method for initialising dictionary; should be implemented by subclasses wanting to expose animable parameters. | |
Protected Attributes | |
TerrainSceneManager * | mSceneManager |
Parent SceneManager. | |
const TerrainOptions * | mOptions |
Link to shared options. | |
VertexData * | mTerrain |
int | mRenderLevel |
The current LOD level. | |
int | mLastNextLevel |
The previous 'next' LOD level down, for frame coherency. | |
Real | mLODMorphFactor |
The morph factor between this and the next LOD level down. | |
Real * | mMinLevelDistSqr |
List of squared distances at which LODs change. | |
TerrainRenderable * | mNeighbors [4] |
Connection to tiles four neighbours. | |
bool | mLightListDirty |
Whether light list need to re-calculate. | |
LightList | mLightList |
Cached light list. | |
Real | mBoundingRadius |
The bounding radius of this tile. | |
AxisAlignedBox | mBounds |
Bounding box of this tile. | |
Vector3 | mCenter |
The center point of this tile. | |
MaterialPtr | mMaterial |
Current material used by this tile. | |
bool | mInit |
Whether this tile has been initialised. | |
HardwareVertexBufferSharedPtr | mMainBuffer |
The buffer with all the renderable geometry in it. | |
HardwareVertexBufferSharedPtr * | mDeltaBuffers |
Optional set of delta buffers, used to morph from one LOD to the next. | |
float * | mPositionBuffer |
System-memory buffer with just positions in it, for CPU operations. | |
int | mForcedRenderLevel |
Forced rendering LOD level, optional. | |
int | mNextLevelDown [10] |
Array of LOD indexes specifying which LOD is the next one down (deals with clustered error metrics which cause LODs to be skipped). | |
CustomParameterMap | mCustomParameters |
bool | mPolygonModeOverrideable |
String | mName |
Name of this object. | |
MovableObjectFactory * | mCreator |
Creator of this object (if created by a factory). | |
SceneManager * | mManager |
SceneManager holding this object (if applicable). | |
Node * | mParentNode |
node to which this object is attached | |
bool | mParentIsTagPoint |
bool | mVisible |
Is this object visible? | |
Real | mUpperDistance |
Upper distance to still render. | |
Real | mSquaredUpperDistance |
bool | mBeyondFarDistance |
Hidden because of distance? | |
Any | mUserAny |
User defined link to another object / value / whatever. | |
uint8 | mRenderQueueID |
The render queue to use when rendering this object. | |
bool | mRenderQueueIDSet |
Flags whether the RenderQueue's default should be used. | |
uint32 | mQueryFlags |
Flags determining whether this object is included / excluded from scene queries. | |
uint32 | mVisibilityFlags |
Flags determining whether this object is visible (compared to SceneManager mask). | |
AxisAlignedBox | mWorldAABB |
Cached world AABB of this object. | |
Sphere | mWorldBoundingSphere |
AxisAlignedBox | mWorldDarkCapBounds |
World space AABB of this object's dark cap. | |
bool | mCastShadows |
Does this object cast shadows? | |
Static Protected Attributes | |
String | mType |
The MovableObject type. | |
const PlaneList | msDummyPlaneList |
uint32 | msDefaultQueryFlags |
Default query flags. | |
uint32 | msDefaultVisibilityFlags |
Default visibility flags. | |
AnimableDictionaryMap | msAnimableDictionary |
Static map of class name to list of animable value names. |
Definition at line 158 of file OgreTerrainRenderable.h.
|
Definition at line 202 of file OgreAnimable.h. |
|
Definition at line 247 of file OgreRenderable.h. |
|
Definition at line 121 of file OgreShadowCaster.h. |
|
Definition at line 122 of file OgreShadowCaster.h. |
|
Definition at line 167 of file OgreTerrainRenderable.h. |
|
|
|
|
|
|
|
|
|
|
|
Calculates static normals for lighting the terrain.
|
|
|
|
Generates terrain shadows and lighting using vertex colors.
|
|
Get the manager of this object, if any (internal use only).
Definition at line 111 of file OgreMovableObject.h. |
|
Returns the neighbor TerrainRenderable.
Definition at line 253 of file OgreTerrainRenderable.h. |
|
Calculates the normal at the given location.
|
|
return the full transformation of the parent sceneNode or the attachingPoint node
|
|
Definition at line 322 of file OgreTerrainRenderable.h. |
|
Returns the index into the height array for the given coords.
Definition at line 297 of file OgreTerrainRenderable.h. |
|
Internal method called to notify the object that it has been attached to a node.
Reimplemented in Ogre::Entity, and Ogre::ParticleSystem. |
|
Notify the object of it's creator (internal use only).
Definition at line 107 of file OgreMovableObject.h. |
|
Updates the level of detail to be used for rendering this TerrainRenderable based on the passed in Camera.
Reimplemented from Ogre::MovableObject. |
|
Notify the object of it's manager (internal use only).
Definition at line 109 of file OgreMovableObject.h. |
|
Definition at line 309 of file OgreTerrainRenderable.h. |
|
Sets the appropriate neighbor for this TerrainRenderable. Neighbors are necessary to know when to bridge between LODs. Definition at line 246 of file OgreTerrainRenderable.h. |
|
Overridden from Renderable to allow the morph LOD entry to be set.
Reimplemented from Ogre::Renderable. |
|
Internal method by which the movable object must add Renderable subclass instances to the rendering queue.
Implements Ogre::MovableObject. |
|
Returns the vertex coord for the given coordinates.
Definition at line 303 of file OgreTerrainRenderable.h. |
|
As setQueryFlags, except the flags passed as parameters are appended to the existing flags on this object.
Definition at line 268 of file OgreMovableObject.h. References Ogre::uint32. |
|
As setVisibilityFlags, except the flags passed as parameters are appended to the existing flags on this object.
Definition at line 296 of file OgreMovableObject.h. References Ogre::uint32. |
|
Internal method for creating a dictionary of animable value names for the class, if it does not already exist.
Definition at line 215 of file OgreAnimable.h. References Ogre::StringVector. |
|
Create a reference-counted AnimableValuePtr for the named value.
Reimplemented in Ogre::Light. Definition at line 281 of file OgreAnimable.h. References Ogre::AnimableValuePtr, OGRE_EXCEPT, and Ogre::String. |
|
Create a blank delta buffer for usein morphing.
|
|
|
|
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.
|
|
Internal method for generating triangle list terrain indexes.
|
|
Internal method for generating stripified terrain indexes.
|
|
Get the name of the animable dictionary for this class.
Reimplemented in Ogre::Light. Definition at line 210 of file OgreAnimable.h. References Ogre::String. |
|
Gets a list of animable value names for this object.
Definition at line 256 of file OgreAnimable.h. References OGRE_EXCEPT, and Ogre::StringVector. |
|
Get an updateable reference to animable value list.
Definition at line 228 of file OgreAnimable.h. References OGRE_EXCEPT, and Ogre::StringVector. |
|
Returns the bounding box of this TerrainRenderable.
Implements Ogre::MovableObject. Definition at line 193 of file OgreTerrainRenderable.h. |
|
Overridden from MovableObject.
Implements Ogre::MovableObject. Definition at line 279 of file OgreTerrainRenderable.h. References Ogre::Real. |
|
Returns whether shadow casting is enabled for this object.
Implements Ogre::ShadowCaster. Definition at line 339 of file OgreMovableObject.h. |
|
Method which reports whether this renderable would normally cast a shadow.
Reimplemented in Ogre::StaticGeometry::GeometryBucket, and Ogre::SubEntity. Definition at line 150 of file OgreRenderable.h. |
|
Definition at line 142 of file OgreRenderable.h. References Ogre::PlaneList. |
|
Gets the custom value associated with this Renderable at the given index.
Definition at line 176 of file OgreRenderable.h. References OGRE_EXCEPT. |
|
Overridden member from ShadowCaster.
Implements Ogre::ShadowCaster. |
|
Get the default query flags for all future MovableObject instances.
Definition at line 283 of file OgreMovableObject.h. References Ogre::uint32. |
|
Get the default visibility flags for all future MovableObject instances.
Definition at line 311 of file OgreMovableObject.h. References Ogre::uint32. |
|
Define a default implementation of method from ShadowCaster which implements no shadows.
Implements Ogre::ShadowCaster. Reimplemented in Ogre::Entity, Ogre::ManualObject, and Ogre::StaticGeometry::Region. Definition at line 314 of file OgreMovableObject.h. |
|
Helper moethod for calculating extrusion distance.
|
|
Returns the terrain height at the given coordinates.
|
|
Gets the index data for this tile based on current settings.
|
|
Overridden member from ShadowCaster.
Implements Ogre::ShadowCaster. |
|
Implements Ogre::Renderable. |
|
Retrieves a weak reference to the material this renderable object uses.
Implements Ogre::Renderable. Definition at line 211 of file OgreTerrainRenderable.h. |
|
Returns the type of the movable.
Implements Ogre::MovableObject. Definition at line 187 of file OgreTerrainRenderable.h. References Ogre::String. |
|
Returns the name of this object.
Reimplemented in Ogre::Camera. Definition at line 114 of file OgreMovableObject.h. References Ogre::String. |
|
Returns whether or not this Renderable wishes the hardware to normalise normals.
Reimplemented in Ogre::SubEntity. Definition at line 134 of file OgreRenderable.h. |
|
Returns the number of world transform matrices this renderable requires.
Reimplemented in Ogre::BorderRenderable, and Ogre::SubEntity. Definition at line 104 of file OgreRenderable.h. |
|
Returns the node to which this object is attached.
|
|
Returns the scene node to which this object is attached.
|
|
Get the distance to extrude for a point/spot light.
Implements Ogre::ShadowCaster. |
|
Gets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting.
Reimplemented in Ogre::BorderRenderable. Definition at line 239 of file OgreRenderable.h. |
|
Returns the query flags relevant for this object.
Definition at line 275 of file OgreMovableObject.h. References Ogre::uint32. |
|
Gets the distance at which batches are no longer rendered.
Definition at line 208 of file OgreMovableObject.h. References Ogre::Real. |
|
Returns the mipmap level that will be rendered for this frame.
Definition at line 222 of file OgreTerrainRenderable.h. |
|
Constructs a RenderOperation to render the TerrainRenderable.
Implements Ogre::Renderable. |
|
Gets the queue group for this entity, see setRenderQueueGroup for full details.
|
|
Define a default implementation of method from ShadowCaster which implements no shadows.
Implements Ogre::ShadowCaster. Reimplemented in Ogre::Entity, Ogre::ManualObject, and Ogre::StaticGeometry::Region. |
|
Overridden, see Renderable.
Implements Ogre::Renderable. |
|
Retrieves a pointer to the Material Technique this renderable object uses.
Reimplemented in Ogre::StaticGeometry::GeometryBucket, and Ogre::SubEntity. Definition at line 69 of file OgreRenderable.h. |
|
Reimplemented from Ogre::MovableObject. |
|
Retrieves the custom user value associated with this object.
Definition at line 236 of file OgreMovableObject.h. |
|
Retrieves a pointer to a custom application object associated with this movable by an earlier call to setUserObject.
Definition at line 220 of file OgreMovableObject.h. |
|
Returns the visibility flags relevant for this object.
Definition at line 303 of file OgreMovableObject.h. References Ogre::uint32. |
|
Retrieves the axis-aligned bounding box for this object in world coordinates.
Implements Ogre::ShadowCaster. Reimplemented in Ogre::Entity. |
|
Retrieves the worldspace bounding sphere for this object.
Reimplemented in Ogre::Entity. |
|
Gets the worldspace orientation of this renderable; this is used in order to more efficiently update parameters to vertex & fragment programs, since inverting Quaterion and Vector in order to derive object-space positions / directions for cameras and lights is much more efficient than inverting a complete 4x4 matrix, and also eliminates problems introduced by scaling.
Implements Ogre::Renderable. |
|
Gets the worldspace orientation of this renderable; this is used in order to more efficiently update parameters to vertex & fragment programs, since inverting Quaterion and Vector in order to derive object-space positions / directions for cameras and lights is much more efficient than inverting a complete 4x4 matrix, and also eliminates problems introduced by scaling.
Implements Ogre::Renderable. |
|
Gets the world transform matrix / matrices for this renderable object.
Implements Ogre::Renderable. |
|
Initializes the TerrainRenderable.
|
|
Internal method for initialising dictionary; should be implemented by subclasses wanting to expose animable parameters.
Reimplemented in Ogre::Light. Definition at line 248 of file OgreAnimable.h. References Ogre::StringVector. |
|
Intersects the segment witht he terrain tile.
|
|
Returns true if this object is attached to a SceneNode or TagPoint.
|
|
Returns true if this object is attached to a SceneNode or TagPoint, and this SceneNode / TagPoint is currently in an active part of the scene graph.
|
|
Returns whether or not this object is supposed to be visible or not.
Reimplemented in Ogre::StaticGeometry::Region. |
|
As setQueryFlags, except the flags passed as parameters are removed from the existing flags on this object.
Definition at line 272 of file OgreMovableObject.h. |
|
As setVisibilityFlags, except the flags passed as parameters are removed from the existing flags on this object.
Definition at line 300 of file OgreMovableObject.h. References Ogre::uint32. |
|
Sets whether or not this object will cast shadows.
Definition at line 337 of file OgreMovableObject.h. |
|
Sets a custom parameter for this Renderable, which may be used to drive calculations for this specific Renderable, like GPU program parameters.
Definition at line 167 of file OgreRenderable.h. |
|
Set the default query flags for all future MovableObject instances.
Definition at line 279 of file OgreMovableObject.h. References Ogre::uint32. |
|
Set the default visibility flags for all future MovableObject instances.
Definition at line 307 of file OgreMovableObject.h. References Ogre::uint32. |
|
Forces the LOD to the given level from this point on.
Definition at line 228 of file OgreTerrainRenderable.h. |
|
Definition at line 259 of file OgreTerrainRenderable.h. |
|
Sets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting.
Definition at line 231 of file OgreRenderable.h. |
|
Sets the query flags for this object.
Definition at line 264 of file OgreMovableObject.h. References Ogre::uint32. |
|
Sets the distance at which the object is no longer rendered.
Definition at line 202 of file OgreMovableObject.h. References Ogre::Real. |
|
Sets the render queue group this entity will be rendered through.
Reimplemented in Ogre::Entity, and Ogre::ParticleSystem. |
|
Sets any kind of user value on this object.
Definition at line 232 of file OgreMovableObject.h. |
|
Call this to associate your own custom user object instance with this MovableObject.
Definition at line 216 of file OgreMovableObject.h. |
|
Sets the visiblity flags for this object.
Definition at line 292 of file OgreMovableObject.h. References Ogre::uint32. |
|
Tells this object whether to be visible or not, if it has a renderable component.
Reimplemented in Ogre::Light. |
|
Utility method to generate stitching indexes on the edge of a tile.
|
|
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.
|
|
Returns whether or not to use an 'identity' projection.
Reimplemented in Ogre::BorderRenderable, Ogre::OverlayElement, and Ogre::Rectangle2D. Definition at line 114 of file OgreRenderable.h. |
|
Returns whether or not to use an 'identity' projection.
Reimplemented in Ogre::BorderRenderable, Ogre::OverlayElement, and Ogre::Rectangle2D. Definition at line 124 of file OgreRenderable.h. |
|
Hidden because of distance?
Definition at line 68 of file OgreMovableObject.h. |
|
The bounding radius of this tile.
Definition at line 359 of file OgreTerrainRenderable.h. |
|
Bounding box of this tile.
Definition at line 361 of file OgreTerrainRenderable.h. |
|
Does this object cast shadows?
Definition at line 86 of file OgreMovableObject.h. |
|
The center point of this tile.
Definition at line 363 of file OgreTerrainRenderable.h. |
|
Creator of this object (if created by a factory).
Definition at line 56 of file OgreMovableObject.h. |
|
Definition at line 248 of file OgreRenderable.h. |
|
Optional set of delta buffers, used to morph from one LOD to the next.
Definition at line 373 of file OgreTerrainRenderable.h. |
|
Forced rendering LOD level, optional.
Definition at line 377 of file OgreTerrainRenderable.h. |
|
Whether this tile has been initialised.
Definition at line 369 of file OgreTerrainRenderable.h. |
|
The previous 'next' LOD level down, for frame coherency.
Definition at line 347 of file OgreTerrainRenderable.h. |
|
Cached light list.
Definition at line 357 of file OgreTerrainRenderable.h. |
|
Whether light list need to re-calculate.
Definition at line 355 of file OgreTerrainRenderable.h. |
|
The morph factor between this and the next LOD level down.
Definition at line 349 of file OgreTerrainRenderable.h. |
|
The buffer with all the renderable geometry in it.
Definition at line 371 of file OgreTerrainRenderable.h. |
|
SceneManager holding this object (if applicable).
Definition at line 58 of file OgreMovableObject.h. |
|
Current material used by this tile.
Definition at line 367 of file OgreTerrainRenderable.h. |
|
List of squared distances at which LODs change.
Definition at line 351 of file OgreTerrainRenderable.h. |
|
Name of this object.
Reimplemented in Ogre::Camera. Definition at line 54 of file OgreMovableObject.h. |
|
Connection to tiles four neighbours.
Definition at line 353 of file OgreTerrainRenderable.h. |
|
Array of LOD indexes specifying which LOD is the next one down (deals with clustered error metrics which cause LODs to be skipped).
Definition at line 380 of file OgreTerrainRenderable.h. |
|
Link to shared options.
Definition at line 294 of file OgreTerrainRenderable.h. |
|
Definition at line 61 of file OgreMovableObject.h. |
|
node to which this object is attached
Definition at line 60 of file OgreMovableObject.h. |
|
Definition at line 249 of file OgreRenderable.h. |
|
System-memory buffer with just positions in it, for CPU operations.
Definition at line 375 of file OgreTerrainRenderable.h. |
|
Flags determining whether this object is included / excluded from scene queries.
Definition at line 76 of file OgreMovableObject.h. |
|
The current LOD level.
Definition at line 345 of file OgreTerrainRenderable.h. |
|
The render queue to use when rendering this object.
Definition at line 72 of file OgreMovableObject.h. |
|
Flags whether the RenderQueue's default should be used.
Definition at line 74 of file OgreMovableObject.h. |
|
Static map of class name to list of animable value names.
Definition at line 204 of file OgreAnimable.h. |
|
Parent SceneManager.
Definition at line 292 of file OgreTerrainRenderable.h. |
|
Default query flags.
Definition at line 90 of file OgreMovableObject.h. |
|
Default visibility flags.
Definition at line 92 of file OgreMovableObject.h. |
|
Definition at line 246 of file OgreRenderable.h. |
|
Definition at line 66 of file OgreMovableObject.h. |
|
Definition at line 342 of file OgreTerrainRenderable.h. |
|
The MovableObject type.
Definition at line 365 of file OgreTerrainRenderable.h. |
|
Upper distance to still render.
Definition at line 65 of file OgreMovableObject.h. |
|
User defined link to another object / value / whatever.
Definition at line 70 of file OgreMovableObject.h. |
|
Flags determining whether this object is visible (compared to SceneManager mask).
Definition at line 78 of file OgreMovableObject.h. |
|
Is this object visible?
Definition at line 63 of file OgreMovableObject.h. |
|
Cached world AABB of this object.
Reimplemented in Ogre::ParticleSystem. Definition at line 80 of file OgreMovableObject.h. |
|
Definition at line 82 of file OgreMovableObject.h. |
|
World space AABB of this object's dark cap.
Definition at line 84 of file OgreMovableObject.h. |
Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Mar 12 14:48:27 2006