#include <OgreStaticGeometry.h>
Inheritance diagram for Ogre::StaticGeometry::GeometryBucket:
Public Member Functions | |
GeometryBucket (MaterialBucket *parent, const String &formatString, const VertexData *vData, const IndexData *iData) | |
virtual | ~GeometryBucket () |
MaterialBucket * | getParent (void) |
const VertexData * | getVertexData (void) const |
Get the vertex data for this geometry. | |
const IndexData * | getIndexData (void) const |
Get the index data for this geometry. | |
const MaterialPtr & | getMaterial (void) const |
| |
Technique * | getTechnique (void) const |
Retrieves a pointer to the Material Technique this renderable object uses. | |
void | getRenderOperation (RenderOperation &op) |
Gets the render operation required to send this object to the frame buffer. | |
void | getWorldTransforms (Matrix4 *xform) const |
Gets the world transform matrix / matrices for this renderable object. | |
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. | |
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. | |
Real | getSquaredViewDepth (const Camera *cam) const |
Returns the camera-relative squared depth of this renderable. | |
const LightList & | getLights (void) const |
Gets a list of lights, ordered relative to how close they are to this renderable. | |
bool | getCastsShadows (void) const |
Method which reports whether this renderable would normally cast a shadow. | |
bool | assign (QueuedGeometry *qsm) |
Try to assign geometry to this bucket. | |
void | build (bool stencilShadows) |
Build. | |
void | dump (std::ofstream &of) const |
Dump contents for diagnostics. | |
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 |
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 | _updateCustomGpuParameter (const GpuProgramParameters::AutoConstantEntry &constantEntry, GpuProgramParameters *params) const |
Update a custom GpuProgramParameters constant which is derived from information only this Renderable knows. | |
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. | |
Protected Types | |
typedef std::map< size_t, Vector4 > | CustomParameterMap |
Protected Member Functions | |
template<typename T> void | copyIndexes (const T *src, T *dst, size_t count, size_t indexOffset) |
Protected Attributes | |
QueuedGeometryList | mQueuedGeometry |
Geometry which has been queued up pre-build (not for deallocation). | |
MaterialBucket * | mParent |
Pointer to parent bucket. | |
String | mFormatString |
String identifying the vertex / index format. | |
VertexData * | mVertexData |
Vertex information, includes current number of vertices committed to be a part of this bucket. | |
IndexData * | mIndexData |
Index information, includes index type which limits the max number of vertices which are allowed in one bucket. | |
HardwareIndexBuffer::IndexType | mIndexType |
Size of indexes. | |
size_t | mMaxVertexIndex |
Maximum vertex indexable. | |
CustomParameterMap | mCustomParameters |
bool | mPolygonModeOverrideable |
Static Protected Attributes | |
const PlaneList | msDummyPlaneList |
It also acts as the renderable.
Definition at line 176 of file OgreStaticGeometry.h.
|
Definition at line 247 of file OgreRenderable.h. |
|
|
|
|
|
Update a custom GpuProgramParameters constant which is derived from information only this Renderable knows.
Reimplemented in Ogre::SubEntity, and Ogre::TerrainRenderable. Definition at line 215 of file OgreRenderable.h. References Ogre::GpuProgramParameters::AutoConstantEntry::data, Ogre::GpuProgramParameters::AutoConstantEntry::index, and Ogre::GpuProgramParameters::setConstant(). |
|
Try to assign geometry to this bucket.
|
|
Build.
|
|
Definition at line 197 of file OgreStaticGeometry.h. |
|
Dump contents for diagnostics.
|
|
Method which reports whether this renderable would normally cast a shadow.
Reimplemented from Ogre::Renderable. |
|
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. |
|
Get the index data for this geometry.
Definition at line 219 of file OgreStaticGeometry.h. |
|
Gets a list of lights, ordered relative to how close they are to this renderable.
Implements Ogre::Renderable. |
|
Implements Ogre::Renderable. |
|
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. |
|
Definition at line 215 of file OgreStaticGeometry.h. |
|
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. |
|
Gets the render operation required to send this object to the frame buffer.
Implements Ogre::Renderable. |
|
Returns the camera-relative squared depth of this renderable.
Implements Ogre::Renderable. |
|
Retrieves a pointer to the Material Technique this renderable object uses.
Reimplemented from Ogre::Renderable. |
|
Get the vertex data for this geometry.
Definition at line 217 of file OgreStaticGeometry.h. |
|
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. |
|
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. |
|
Sets whether this renderable's chosen detail level can be overridden (downgraded) by the camera setting.
Definition at line 231 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 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. |
|
Definition at line 248 of file OgreRenderable.h. |
|
String identifying the vertex / index format.
Definition at line 184 of file OgreStaticGeometry.h. |
|
Index information, includes index type which limits the max number of vertices which are allowed in one bucket.
Definition at line 190 of file OgreStaticGeometry.h. |
|
Size of indexes.
Definition at line 192 of file OgreStaticGeometry.h. |
|
Maximum vertex indexable.
Definition at line 194 of file OgreStaticGeometry.h. |
|
Pointer to parent bucket.
Definition at line 182 of file OgreStaticGeometry.h. |
|
Definition at line 249 of file OgreRenderable.h. |
|
Geometry which has been queued up pre-build (not for deallocation).
Definition at line 180 of file OgreStaticGeometry.h. |
|
Definition at line 246 of file OgreRenderable.h. |
|
Vertex information, includes current number of vertices committed to be a part of this bucket.
Definition at line 187 of file OgreStaticGeometry.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:44:54 2006