#include <OgreSubEntity.h>
Inheritance diagram for Ogre::SubEntity:
Public Methods | |
const String & | getMaterialName () const |
Gets the name of the Material in use by this instance. | |
void | setMaterialName (const String &name) |
Sets the name of the Material to be used. | |
virtual void | setVisible (bool visible) |
Tells this SubEntity whether to be visible or not. | |
virtual bool | isVisible (void) const |
Returns whether or not this SubEntity is supposed to be visible. | |
SubMesh * | getSubMesh (void) |
Accessor method to read mesh data. | |
Material * | getMaterial (void) const |
Overridden - see Renderable. | |
Technique * | getTechnique (void) const |
Overridden - see Renderable. | |
void | getRenderOperation (RenderOperation &op) |
Overridden - see Renderable. | |
void | getWorldTransforms (Matrix4 *xform) const |
Overridden - see Renderable. | |
const Quaternion & | getWorldOrientation (void) const |
@copydoc Renderable::getWorldOrientation | |
const Vector3 & | getWorldPosition (void) const |
@copydoc Renderable::getWorldPosition | |
bool | getNormaliseNormals (void) const |
Overridden - see Renderable. | |
unsigned short | getNumWorldTransforms (void) const |
Overridden - see Renderable. | |
Real | getSquaredViewDepth (const Camera *cam) const |
Overridden, see Renderable. | |
void | setRenderDetail (SceneDetailLevel renderDetail) |
Sets the rendering level (solid, wireframe) of this SubEntity. | |
SceneDetailLevel | getRenderDetail () const |
Overridden, see Renderable. | |
const LightList & | getLights (void) const |
@copydoc Renderable::getLights | |
const VertexData * | getBlendedVertexData (void) |
Get the temporary blended vertex data for this subentity. | |
bool | getCastsShadows (void) const |
@copydoc Renderable::getCastsShadows | |
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 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. | |
Protected Types | |
typedef std::map< size_t, Vector4 > | CustomParameterMap |
Protected Methods | |
SubEntity (Entity *parent, SubMesh *subMeshBasis) | |
Private constructor - don't allow creation by anybody else. | |
virtual | ~SubEntity () |
Private destructor. | |
void | prepareTempBlendBuffers (void) |
Internal method for preparing this Entity for use in animation. | |
Protected Attributes | |
Entity * | mParentEntity |
Pointer to parent. | |
String | mMaterialName |
Name of Material in use by this SubEntity. | |
Material * | mpMaterial |
Cached pointer to material. | |
SubMesh * | mSubMesh |
bool | mVisible |
Is this SubEntity visible? | |
SceneDetailLevel | mRenderDetail |
unsigned short | mMaterialLodIndex |
The LOD number of the material to use, calculated by Entity::_notifyCurrentCamera. | |
VertexData * | mBlendedVertexData |
blend buffer details for dedicated geometry | |
TempBlendedBufferInfo | mTempBlendedBuffer |
Quick lookup of buffers. | |
CustomParameterMap | mCustomParameters |
Static Protected Attributes | |
const PlaneList | msDummyPlaneList |
Friends | |
class | Entity |
class | SceneManager |
The SubEntity also allows the application some flexibility in the material properties for this section of a particular instance of this Mesh, e.g. tinting the windows on a car model.
SubEntity instances are never created manually. They are created at the same time as their parent Entity by the SceneManager method createEntity.
Definition at line 52 of file OgreSubEntity.h.
|
Definition at line 232 of file OgreRenderable.h. |
|
Private constructor - don't allow creation by anybody else.
Definition at line 39 of file OgreSubEntity.cpp. References mBlendedVertexData, mMaterialLodIndex, mpMaterial, mRenderDetail, mVisible, and Ogre::SDL_SOLID. |
|
Private destructor.
Definition at line 53 of file OgreSubEntity.cpp. References mBlendedVertexData. |
|
Update a custom GpuProgramParameters constant which is derived from information only this Renderable knows.
Reimplemented in Ogre::TerrainRenderable. Definition at line 218 of file OgreRenderable.h. References Ogre::GpuProgramParameters::AutoConstantEntry::data, Ogre::GpuProgramParameters::AutoConstantEntry::index, params, and Ogre::GpuProgramParameters::setConstant(). Referenced by Ogre::GpuProgramParameters::_updateAutoParamsNoLights(). |
|
Get the temporary blended vertex data for this subentity.
Definition at line 149 of file OgreSubEntity.h. Referenced by Ogre::Entity::findBlendedVertexData(). |
|
@copydoc Renderable::getCastsShadows
Reimplemented from Ogre::Renderable. Definition at line 221 of file OgreSubEntity.cpp. References Ogre::MovableObject::getCastShadows(), and mParentEntity. |
|
Definition at line 145 of file OgreRenderable.h. References Ogre::PlaneList. Referenced by Ogre::SceneManager::renderSingleObject(). |
|
Gets the custom value associated with this Renderable at the given index.
Definition at line 179 of file OgreRenderable.h. References Except. |
|
@copydoc Renderable::getLights
Implements Ogre::Renderable. Definition at line 190 of file OgreSubEntity.cpp. References Ogre::SceneNode::findLights(), Ogre::Entity::getBoundingRadius(), Ogre::MovableObject::getParentSceneNode(), Ogre::LightList, and mParentEntity. |
|
Overridden - see Renderable.
Implements Ogre::Renderable. Definition at line 102 of file OgreSubEntity.cpp. References mpMaterial. |
|
Gets the name of the Material in use by this instance.
Definition at line 64 of file OgreSubEntity.cpp. References mMaterialName, and Ogre::String. |
|
Overridden - see Renderable.
Reimplemented from Ogre::Renderable. Definition at line 185 of file OgreSubEntity.cpp. References Ogre::Entity::mNormaliseNormals, and mParentEntity. |
|
Overridden - see Renderable.
Reimplemented from Ogre::Renderable. Definition at line 163 of file OgreSubEntity.cpp. References Ogre::Entity::isHardwareSkinningEnabled(), Ogre::Entity::mNumBoneMatrices, and mParentEntity. |
|
Overridden, see Renderable.
Reimplemented from Ogre::Renderable. Definition at line 145 of file OgreSubEntity.h. References Ogre::SceneDetailLevel. |
|
Overridden - see Renderable.
Implements Ogre::Renderable. Definition at line 112 of file OgreSubEntity.cpp. References Ogre::SubMesh::_getRenderOperation(), Ogre::Entity::hasSkeleton(), mBlendedVertexData, Ogre::Entity::mHardwareSkinning, Ogre::Entity::mMeshLodIndex, mParentEntity, Ogre::Entity::mSharedBlendedVertexData, mSubMesh, Ogre::SubMesh::useSharedVertices, and Ogre::RenderOperation::vertexData. |
|
Overridden, see Renderable.
Implements Ogre::Renderable. Definition at line 178 of file OgreSubEntity.cpp. References Ogre::MovableObject::getParentNode(), Ogre::Node::getSquaredViewDepth(), mParentEntity, and Ogre::Real. |
|
Accessor method to read mesh data.
Definition at line 59 of file OgreSubEntity.cpp. References mSubMesh. Referenced by Ogre::Entity::findBlendedVertexData(), and Ogre::Entity::findSubEntityForVertexData(). |
|
Overridden - see Renderable.
Reimplemented from Ogre::Renderable. Definition at line 107 of file OgreSubEntity.cpp. References Ogre::Material::getBestTechnique(), mMaterialLodIndex, and mpMaterial. |
|
@copydoc Renderable::getWorldOrientation
Implements Ogre::Renderable. Definition at line 152 of file OgreSubEntity.cpp. References Ogre::Node::_getDerivedOrientation(), mParentEntity, and Ogre::MovableObject::mParentNode. |
|
@copydoc Renderable::getWorldPosition
Implements Ogre::Renderable. Definition at line 157 of file OgreSubEntity.cpp. References Ogre::Node::_getDerivedPosition(), mParentEntity, and Ogre::MovableObject::mParentNode. |
|
Overridden - see Renderable.
Implements Ogre::Renderable. Definition at line 125 of file OgreSubEntity.cpp. References Ogre::MovableObject::_getParentNodeFullTransform(), Ogre::Entity::isHardwareSkinningEnabled(), Ogre::Entity::mBoneMatrices, Ogre::Entity::mNumBoneMatrices, and mParentEntity. |
|
Returns whether or not this SubEntity is supposed to be visible.
Definition at line 202 of file OgreSubEntity.cpp. References mVisible. Referenced by Ogre::Entity::EntityShadowRenderable::isVisible(), and Ogre::Entity::updateAnimation(). |
|
Internal method for preparing this Entity for use in animation.
Definition at line 208 of file OgreSubEntity.cpp. References Ogre::Entity::cloneVertexDataRemoveBlendInfo(), Ogre::Entity::extractTempBufferInfo(), mBlendedVertexData, mParentEntity, mSubMesh, mTempBlendedBuffer, and Ogre::SubMesh::vertexData. Referenced by Ogre::Entity::prepareTempBlendBuffers(). |
|
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 170 of file OgreRenderable.h. |
|
Sets the name of the Material to be used.
Definition at line 69 of file OgreSubEntity.cpp. References Except, Ogre::Entity::getName(), Ogre::Material::load(), mMaterialName, mParentEntity, mpMaterial, Ogre::Entity::reevaluateVertexProcessing(), and Ogre::String. Referenced by Ogre::Entity::buildSubEntityList(), and Ogre::Entity::clone(). |
|
Sets the rendering level (solid, wireframe) of this SubEntity.
Definition at line 143 of file OgreSubEntity.h. References Ogre::SceneDetailLevel. |
|
Tells this SubEntity whether to be visible or not.
Definition at line 197 of file OgreSubEntity.cpp. References mVisible. |
|
Returns whether or not to use an 'identity' projection.
Reimplemented in Ogre::GuiElement, Ogre::Rectangle2D, and Ogre::BorderRenderable. Definition at line 113 of file OgreRenderable.h. Referenced by Ogre::SceneManager::useRenderableViewProjMode(). |
|
Returns whether or not to use an 'identity' projection.
Reimplemented in Ogre::GuiElement, Ogre::Rectangle2D, and Ogre::BorderRenderable. Definition at line 123 of file OgreRenderable.h. Referenced by Ogre::SceneManager::useRenderableViewProjMode(). |
|
Definition at line 55 of file OgreSubEntity.h. |
|
Definition at line 56 of file OgreSubEntity.h. |
|
blend buffer details for dedicated geometry
Definition at line 86 of file OgreSubEntity.h. Referenced by getRenderOperation(), prepareTempBlendBuffers(), SubEntity(), Ogre::Entity::updateAnimation(), and ~SubEntity(). |
|
Definition at line 233 of file OgreRenderable.h. |
|
The LOD number of the material to use, calculated by Entity::_notifyCurrentCamera.
Definition at line 83 of file OgreSubEntity.h. Referenced by getTechnique(), and SubEntity(). |
|
Name of Material in use by this SubEntity.
Definition at line 70 of file OgreSubEntity.h. Referenced by getMaterialName(), and setMaterialName(). |
|
Pointer to parent.
Definition at line 67 of file OgreSubEntity.h. Referenced by getCastsShadows(), getLights(), getNormaliseNormals(), getNumWorldTransforms(), getRenderOperation(), getSquaredViewDepth(), getWorldOrientation(), getWorldPosition(), getWorldTransforms(), prepareTempBlendBuffers(), and setMaterialName(). |
|
Cached pointer to material.
Definition at line 73 of file OgreSubEntity.h. Referenced by getMaterial(), getTechnique(), setMaterialName(), and SubEntity(). |
|
Definition at line 81 of file OgreSubEntity.h. Referenced by SubEntity(). |
|
Definition at line 45 of file OgreRenderSystem.cpp. |
|
Definition at line 76 of file OgreSubEntity.h. Referenced by getRenderOperation(), getSubMesh(), prepareTempBlendBuffers(), and Ogre::Entity::updateAnimation(). |
|
Quick lookup of buffers.
Definition at line 88 of file OgreSubEntity.h. Referenced by prepareTempBlendBuffers(), and Ogre::Entity::updateAnimation(). |
|
Is this SubEntity visible?
Definition at line 79 of file OgreSubEntity.h. Referenced by isVisible(), setVisible(), and SubEntity(). |
Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:51:42 2004