#include <OgrePatchMesh.h>
Inheritance diagram for Ogre::PatchMesh:
Public Types | |
typedef std::vector< Real > | LodDistanceList |
typedef std::multimap< size_t, VertexBoneAssignment > | VertexBoneAssignmentList |
Multimap of vertex bone assignments (orders by vertex index). | |
typedef MapIterator< VertexBoneAssignmentList > | BoneAssignmentIterator |
Public Methods | |
PatchMesh (const String &name, void *controlPointBuffer, VertexDeclaration *declaration, size_t width, size_t height, size_t uMaxSubdivisionLevel=PatchSurface::AUTO_LEVEL, size_t vMaxSubdivisionLevel=PatchSurface::AUTO_LEVEL, PatchSurface::VisibleSide visibleSide=PatchSurface::VS_FRONT, HardwareBuffer::Usage vbUsage=HardwareBuffer::HBU_STATIC_WRITE_ONLY, HardwareBuffer::Usage ibUsage=HardwareBuffer::HBU_DYNAMIC_WRITE_ONLY, bool vbUseShadow=false, bool ibUseShadow=false) | |
Constructor, as defined in MeshManager::createBezierPatch. | |
void | setSubdivision (Real factor) |
void | load (void) |
Overridden from Resource. | |
virtual void | unload (void) |
Generic unload - called by MeshManager. | |
SubMesh * | createSubMesh (void) |
Creates a new SubMesh. | |
SubMesh * | createSubMesh (const String &name) |
Creates a new SubMesh and gives it a name. | |
void | nameSubMesh (const String &name, ushort index) |
Gives a name to a SubMesh. | |
ushort | _getSubMeshIndex (const String &name) const |
Gets the index of a submesh with a given name. | |
unsigned short | getNumSubMeshes (void) const |
Gets the number of sub meshes which comprise this mesh. | |
SubMesh * | getSubMesh (unsigned short index) const |
Gets a pointer to the submesh indicated by the index. | |
SubMesh * | getSubMesh (const String &name) const |
Gets a SubMesh by name. | |
void | setManuallyDefined (bool manuallyDefined) |
Call this to indicate that this Mesh will be manually defined rather than loaded from a file. | |
Mesh * | clone (const String &newName) |
Makes a copy of this mesh object and gives it a new name. | |
const AxisAlignedBox & | getBounds (void) const |
Get the axis-aligned bounding box for this mesh. | |
Real | getBoundingSphereRadius (void) const |
Gets the radius of the bounding sphere surrounding this mesh. | |
void | _setBounds (const AxisAlignedBox &bounds) |
Manually set the bounding box for this Mesh. | |
void | _setBoundingSphereRadius (Real radius) |
Manually set the bounding radius. | |
void | setSkeletonName (const String &skelName) |
Sets the name of the skeleton this Mesh uses for animation. | |
bool | hasSkeleton (void) const |
Returns true if this Mesh has a linked Skeleton. | |
Skeleton * | getSkeleton (void) const |
Gets a pointer to any linked Skeleton. | |
const String & | getSkeletonName (void) const |
Gets the name of any linked Skeleton. | |
void | _initAnimationState (AnimationStateSet *animSet) |
Initialise an animation set suitable for use with this mesh. | |
void | addBoneAssignment (const VertexBoneAssignment &vertBoneAssign) |
Assigns a vertex to a bone with a given weight, for skeletal animation. | |
void | clearBoneAssignments (void) |
Removes all bone assignments for this mesh. | |
unsigned short | _getNumBoneMatrices (void) const |
Returns the number of bone matrices this mesh uses. | |
void | _getBoneMatrices (const AnimationStateSet &animSet, Matrix4 *pMatrices) |
Applies the animation set passed in, and populates the passed in array of bone matrices. | |
void | _notifySkeleton (Skeleton *pSkel) |
Internal notification, used to tell the Mesh which Skeleton to use without loading it. | |
BoneAssignmentIterator | getBoneAssignmentIterator (void) |
Gets an iterator for access all bone assignments. | |
void | generateLodLevels (const LodDistanceList &lodDistances, ProgressiveMesh::VertexReductionQuota reductionMethod, Real reductionValue) |
Automatically generates lower level of detail versions of this mesh for use when a simpler version of the model is acceptable for rendering. | |
ushort | getNumLodLevels (void) const |
Returns the number of levels of detail that this mesh supports. | |
const MeshLodUsage & | getLodLevel (ushort index) const |
Gets details of the numbered level of detail entry. | |
void | createManualLodLevel (Real fromDepth, const String &meshName) |
Adds a new manual level-of-detail entry to this Mesh. | |
void | updateManualLodLevel (ushort index, const String &meshName) |
Changes the alternate mesh to use as a manual LOD at the given index. | |
ushort | getLodIndex (Real depth) const |
Retrieves the level of detail index for the given depth value. | |
ushort | getLodIndexSquaredDepth (Real squaredDepth) const |
Retrieves the level of detail index for the given squared depth value. | |
bool | isLodManual (void) const |
Returns true if this mesh is using manual LOD. | |
void | _setLodInfo (unsigned short numLevels, bool isManual) |
Internal methods for loading LOD, do not use. | |
void | _setLodUsage (unsigned short level, Mesh::MeshLodUsage &usage) |
Internal methods for loading LOD, do not use. | |
void | _setSubMeshLodFaceList (unsigned short subIdx, unsigned short level, IndexData *facedata) |
Internal methods for loading LOD, do not use. | |
void | removeLodLevels (void) |
Removes all LOD data from this Mesh. | |
void | setVertexBufferPolicy (HardwareBuffer::Usage usage, bool shadowBuffer=false) |
Sets the policy for the vertex buffers to be used when loading this Mesh. | |
void | setIndexBufferPolicy (HardwareBuffer::Usage usage, bool shadowBuffer=false) |
Sets the policy for the index buffers to be used when loading this Mesh. | |
HardwareBuffer::Usage | getVertexBufferUsage (void) const |
Gets the usage setting for this meshes vertex buffers. | |
HardwareBuffer::Usage | getIndexBufferUsage (void) const |
Gets the usage setting for this meshes index buffers. | |
bool | isVertexBufferShadowed (void) const |
Gets whether or not this meshes vertex buffers are shadowed. | |
bool | isIndexBufferShadowed (void) const |
Gets whether or not this meshes index buffers are shadowed. | |
unsigned short | _rationaliseBoneAssignments (size_t vertexCount, VertexBoneAssignmentList &assignments) |
Rationalises the passed in bone assignment list. | |
void | _compileBoneAssignments (void) |
Internal method, be called once to compile bone assignments into geometry buffer. | |
void | buildTangentVectors (unsigned short sourceTexCoordSet=0, unsigned short destTexCoordSet=1) |
This method builds a set of tangent vectors for a given mesh into a 3D texture coordinate buffer. | |
virtual size_t | getSize (void) const |
Retrieves info about the size of the resource. | |
virtual void | touch (void) |
'Touches' the resource to indicate it has been used. | |
time_t | getLastAccess (void) const |
Gets the last time the resource was 'touched'. | |
const String & | getName (void) const |
Gets resource name. | |
ResourceHandle | getHandle (void) const |
bool | isLoaded (void) const |
Returns true if the Resource has been loaded, false otherwise. | |
virtual void | destroy () |
A method to make the resource delete itself. | |
Public Attributes | |
VertexData * | sharedVertexData |
Shared vertex data. | |
Protected Types | |
typedef std::vector< SubMesh * > | SubMeshList |
typedef HashMap< String, ushort, _StringHash > | SubMeshNameMap |
A hashmap used to store optional SubMesh names. | |
typedef std::vector< MeshLodUsage > | MeshLodUsageList |
Protected Methods | |
HardwareVertexBufferSharedPtr | getTangentsBuffer (VertexData *vertexData, unsigned short texCoordSet) |
Internal method for getting or creating a 3D texture coord buffer to hold tangents. | |
void | compileBoneAssignmentsSoftware (const VertexBoneAssignmentList &boneAssignments, unsigned short numBlendWeightsPerVertex, VertexData *targetVertexData) |
Software blending oriented bone assignment compilation. | |
void | compileBoneAssignmentsHardware (const VertexBoneAssignmentList &boneAssignments, unsigned short numBlendWeightsPerVertex, VertexData *targetVertexData) |
Hardware blending oriented bone assignment compilation. | |
Protected Attributes | |
PatchSurface | mSurface |
Internal surface definition. | |
VertexDeclaration * | mDeclaration |
Vertex declaration, cloned from the input. | |
SubMeshList | mSubMeshList |
A list of submeshes which make up this mesh. | |
SubMeshNameMap | mSubMeshNameMap |
AxisAlignedBox | mAABB |
Local bounding box volume. | |
Real | mBoundRadius |
Local bounding sphere radius (centered on object). | |
bool | mManuallyDefined |
String | mSkeletonName |
Optional linked skeleton. | |
Skeleton * | mSkeleton |
VertexBoneAssignmentList | mBoneAssignments |
bool | mBoneAssignmentsOutOfDate |
Flag indicating that bone assignments need to be recompiled. | |
HardwareVertexBufferSharedPtr | mBlendingVB |
bool | mUseSoftwareBlending |
Option whether to use software or hardware blending, there are tradeoffs to both. | |
bool | mIsLodManual |
ushort | mNumLods |
MeshLodUsageList | mMeshLodUsageList |
HardwareBuffer::Usage | mVertexBufferUsage |
HardwareBuffer::Usage | mIndexBufferUsage |
bool | mVertexBufferShadowBuffer |
bool | mIndexBufferShadowBuffer |
String | mName |
ResourceHandle | mHandle |
bool | mIsLoaded |
time_t | mLastAccess |
size_t | mSize |
Definition at line 38 of file OgrePatchMesh.h.
|
Definition at line 99 of file OgreMesh.h. Referenced by Ogre::Mesh::getBoneAssignmentIterator(). |
|
Definition at line 96 of file OgreMesh.h. |
|
Definition at line 154 of file OgreMesh.h. |
|
Definition at line 102 of file OgreMesh.h. |
|
A hashmap used to store optional SubMesh names. Translates a name into SubMesh index Definition at line 117 of file OgreMesh.h. |
|
Multimap of vertex bone assignments (orders by vertex index).
Definition at line 98 of file OgreMesh.h. |
|
Constructor, as defined in MeshManager::createBezierPatch.
Definition at line 33 of file OgrePatchMesh.cpp. References Ogre::VertexDeclaration::clone(), Ogre::PatchSurface::defineSurface(), mDeclaration, Ogre::Mesh::mIndexBufferShadowBuffer, Ogre::Mesh::mIndexBufferUsage, mSurface, Ogre::Mesh::mVertexBufferShadowBuffer, and Ogre::Mesh::mVertexBufferUsage. |
|
Internal method, be called once to compile bone assignments into geometry buffer.
Definition at line 504 of file OgreMesh.cpp. References Ogre::Mesh::_rationaliseBoneAssignments(), Ogre::Mesh::compileBoneAssignmentsHardware(), Ogre::Mesh::compileBoneAssignmentsSoftware(), Ogre::Mesh::mBoneAssignments, Ogre::Mesh::mBoneAssignmentsOutOfDate, Ogre::Mesh::sharedVertexData, and Ogre::VertexData::vertexCount. Referenced by Ogre::Mesh::_initAnimationState(). |
|
Applies the animation set passed in, and populates the passed in array of bone matrices.
Definition at line 408 of file OgreMesh.cpp. References Ogre::Skeleton::_getBoneMatrices(), Ogre::AnimationStateSet, Ogre::Mesh::mSkeleton, and Ogre::Skeleton::setAnimationState(). Referenced by Ogre::Entity::cacheBoneMatrices(). |
|
Returns the number of bone matrices this mesh uses.
Definition at line 400 of file OgreMesh.cpp. References Ogre::Skeleton::getNumBones(), and Ogre::Mesh::mSkeleton. Referenced by Ogre::Entity::cacheBoneMatrices(), and Ogre::Entity::Entity(). |
|
Gets the index of a submesh with a given name.
Definition at line 815 of file OgreMesh.cpp. References Except, Ogre::Mesh::mSubMeshNameMap, and Ogre::ushort. Referenced by Ogre::Entity::getSubEntity(), and Ogre::Mesh::getSubMesh(). |
|
Initialise an animation set suitable for use with this mesh.
Definition at line 380 of file OgreMesh.cpp. References Ogre::Mesh::_compileBoneAssignments(), Ogre::Skeleton::_initAnimationState(), Ogre::AnimationStateSet, Ogre::Mesh::mSkeleton, and Ogre::Mesh::mSubMeshList. Referenced by Ogre::Entity::Entity(). |
|
Internal notification, used to tell the Mesh which Skeleton to use without loading it.
Definition at line 653 of file OgreMesh.cpp. References Ogre::Resource::getName(), Ogre::Mesh::mSkeleton, and Ogre::Mesh::mSkeletonName. |
|
Rationalises the passed in bone assignment list.
Definition at line 419 of file OgreMesh.cpp. References Ogre::Resource::mName, OGRE_MAX_BLEND_WEIGHTS, Ogre::Real, and Ogre::WeightIteratorMap. Referenced by Ogre::SubMesh::_compileBoneAssignments(), and Ogre::Mesh::_compileBoneAssignments(). |
|
Manually set the bounding radius.
Definition at line 322 of file OgreMesh.cpp. References Ogre::Mesh::mBoundRadius, and Ogre::Real. Referenced by Ogre::MeshManager::createCurvedIllusionPlane(), Ogre::MeshManager::createCurvedPlane(), Ogre::MeshManager::createPlane(), Ogre::MeshManager::createPrefabPlane(), load(), Ogre::MeshSerializerImpl::readBoundsInfo(), and Ogre::MeshSerializerImpl_v1::readGeometry(). |
|
Manually set the bounding box for this Mesh.
Definition at line 304 of file OgreMesh.cpp. References Ogre::AxisAlignedBox::getMaximum(), Ogre::AxisAlignedBox::getMinimum(), Ogre::Mesh::mAABB, Ogre::Mesh::mBoundRadius, Ogre::Real, Ogre::AxisAlignedBox::setExtents(), and Ogre::Vector3::squaredLength(). Referenced by Ogre::MeshManager::createCurvedIllusionPlane(), Ogre::MeshManager::createCurvedPlane(), Ogre::MeshManager::createPlane(), Ogre::MeshManager::createPrefabPlane(), load(), Ogre::MeshSerializerImpl::readBoundsInfo(), and Ogre::MeshSerializerImpl_v1::readGeometry(). |
|
Internal methods for loading LOD, do not use.
Definition at line 790 of file OgreMesh.cpp. References Ogre::Mesh::mIsLodManual, Ogre::Mesh::mMeshLodUsageList, Ogre::Mesh::mNumLods, and Ogre::Mesh::mSubMeshList. |
|
Internal methods for loading LOD, do not use.
Definition at line 802 of file OgreMesh.cpp. References Ogre::Mesh::mMeshLodUsageList. |
|
Internal methods for loading LOD, do not use.
Definition at line 807 of file OgreMesh.cpp. References Ogre::SubMesh::mLodFaceList, and Ogre::Mesh::mSubMeshList. |
|
Assigns a vertex to a bone with a given weight, for skeletal animation.
Definition at line 367 of file OgreMesh.cpp. References Ogre::Mesh::mBoneAssignments, Ogre::Mesh::mBoneAssignmentsOutOfDate, and Ogre::VertexBoneAssignment_s::vertexIndex. Referenced by Ogre::MeshSerializerImpl_v1::readMeshBoneAssignment(), and Ogre::MeshSerializerImpl::readMeshBoneAssignment(). |
|
This method builds a set of tangent vectors for a given mesh into a 3D texture coordinate buffer.
Definition at line 907 of file OgreMesh.cpp. References Except, Ogre::VertexDeclaration::findElementBySemantic(), Ogre::VertexBufferBinding::getBuffer(), Ogre::Mesh::getNumSubMeshes(), Ogre::VertexElement::getSource(), Ogre::Mesh::getSubMesh(), Ogre::Mesh::getTangentsBuffer(), Ogre::VertexElement::getType(), Ogre::IndexData::indexBuffer, Ogre::IndexData::indexCount, Ogre::SubMesh::indexData, Ogre::Resource::mName, Ogre::Vector3::normalise(), Ogre::Real, Ogre::Mesh::sharedVertexData, Ogre::SubMesh::useSharedVertices, Ogre::VertexData::vertexBufferBinding, Ogre::VertexData::vertexCount, Ogre::SubMesh::vertexData, Ogre::VertexData::vertexDeclaration, Ogre::VES_POSITION, Ogre::VES_TEXTURE_COORDINATES, Ogre::VET_FLOAT2, Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z. |
|
Removes all bone assignments for this mesh.
Definition at line 374 of file OgreMesh.cpp. References Ogre::Mesh::mBoneAssignments, and Ogre::Mesh::mBoneAssignmentsOutOfDate. |
|
|
Hardware blending oriented bone assignment compilation.
Definition at line 575 of file OgreMesh.cpp. References Ogre::VertexDeclaration::addElement(), Ogre::VertexDeclaration::findElementBySemantic(), Ogre::VertexElement::getIndex(), Ogre::VertexBufferBinding::getNextIndex(), Ogre::VertexDeclaration::getVertexSize(), Ogre::Mesh::mBlendingVB, Ogre::Real, Ogre::VertexDeclaration::removeElement(), Ogre::VertexBufferBinding::setBinding(), Ogre::VertexData::vertexBufferBinding, Ogre::VertexData::vertexCount, Ogre::VertexData::vertexDeclaration, Ogre::VES_BLEND_INDICES, Ogre::VES_BLEND_WEIGHTS, Ogre::VET_FLOAT1, and Ogre::VET_SHORT1. Referenced by Ogre::SubMesh::_compileBoneAssignments(), and Ogre::Mesh::_compileBoneAssignments(). |
|
Software blending oriented bone assignment compilation.
Definition at line 528 of file OgreMesh.cpp. References Ogre::Real, Ogre::VertexData::softwareBlendInfo, and Ogre::VertexData::vertexCount. Referenced by Ogre::SubMesh::_compileBoneAssignments(), and Ogre::Mesh::_compileBoneAssignments(). |
|
Adds a new manual level-of-detail entry to this Mesh.
Definition at line 740 of file OgreMesh.cpp. References Ogre::Mesh::MeshLodUsage::fromDepthSquared, Ogre::Mesh::MeshLodUsage::manualMesh, Ogre::Mesh::MeshLodUsage::manualName, Ogre::Mesh::mIsLodManual, Ogre::Mesh::mMeshLodUsageList, Ogre::Mesh::mNumLods, and Ogre::Real. |
|
Creates a new SubMesh and gives it a name.
Definition at line 92 of file OgreMesh.cpp. References Ogre::Mesh::createSubMesh(), Ogre::Mesh::mSubMeshList, Ogre::Mesh::nameSubMesh(), and Ogre::ushort. |
|
Creates a new SubMesh.
Definition at line 82 of file OgreMesh.cpp. References Ogre::Mesh::mSubMeshList, Ogre::SubMesh::parent, and Ogre::Mesh::SubMesh. Referenced by Ogre::Mesh::clone(), Ogre::MeshManager::createCurvedIllusionPlane(), Ogre::MeshManager::createCurvedPlane(), Ogre::MeshManager::createPlane(), Ogre::MeshManager::createPrefabPlane(), Ogre::Mesh::createSubMesh(), load(), Ogre::MeshSerializerImpl_v1::readSubMesh(), and Ogre::MeshSerializerImpl::readSubMesh(). |
|
A method to make the resource delete itself.
Definition at line 137 of file OgreResource.h. |
|
Automatically generates lower level of detail versions of this mesh for use when a simpler version of the model is acceptable for rendering.
Definition at line 670 of file OgreMesh.cpp. References Ogre::ProgressiveMesh::build(), Ogre::Mesh::MeshLodUsage::fromDepthSquared, Ogre::Mesh::mIsLodManual, Ogre::Mesh::mMeshLodUsageList, Ogre::Resource::mName, Ogre::Mesh::mNumLods, Ogre::Mesh::mSubMeshList, Ogre::Real, and Ogre::Mesh::sharedVertexData. |
|
Gets an iterator for access all bone assignments.
Definition at line 659 of file OgreMesh.cpp. References Ogre::Mesh::BoneAssignmentIterator, and Ogre::Mesh::mBoneAssignments. |
|
Gets the radius of the bounding sphere surrounding this mesh.
Definition at line 851 of file OgreMesh.cpp. References Ogre::Mesh::mBoundRadius, and Ogre::Real. Referenced by Ogre::MeshSerializerImpl::exportMesh(), and Ogre::Entity::getBoundingRadius(). |
|
Get the axis-aligned bounding box for this mesh.
Definition at line 295 of file OgreMesh.cpp. References Ogre::Mesh::mAABB. Referenced by Ogre::MeshSerializerImpl::exportMesh(), and Ogre::Entity::getBoundingBox(). |
|
Definition at line 120 of file OgreResource.h. References Ogre::ResourceHandle. Referenced by Ogre::Material::clone(), Ogre::BspLevel::loadQuake3Level(), and Ogre::ResourceManager::unload(). |
|
Gets the usage setting for this meshes index buffers.
Definition at line 486 of file OgreMesh.h. |
|
Gets the last time the resource was 'touched'.
Definition at line 108 of file OgreResource.h. |
|
Retrieves the level of detail index for the given depth value.
Definition at line 766 of file OgreMesh.cpp. References Ogre::Mesh::getLodIndexSquaredDepth(), Ogre::Real, and Ogre::ushort. |
|
Retrieves the level of detail index for the given squared depth value.
Definition at line 771 of file OgreMesh.cpp. References Ogre::Mesh::mMeshLodUsageList, Ogre::Real, and Ogre::ushort. Referenced by Ogre::Entity::_notifyCurrentCamera(), and Ogre::Mesh::getLodIndex(). |
|
Gets details of the numbered level of detail entry.
Definition at line 719 of file OgreMesh.cpp. References Ogre::Mesh::mIsLodManual, Ogre::Mesh::mMeshLodUsageList, and Ogre::ushort. Referenced by Ogre::Entity::cacheBoneMatrices(), Ogre::Entity::Entity(), and Ogre::MeshSerializerImpl::writeLodInfo(). |
|
|
Returns the number of levels of detail that this mesh supports.
Definition at line 714 of file OgreMesh.cpp. References Ogre::Mesh::mNumLods, and Ogre::ushort. Referenced by Ogre::Entity::Entity(), Ogre::MeshSerializerImpl::writeLodInfo(), and Ogre::MeshSerializerImpl::writeMesh(). |
|
Gets the number of sub meshes which comprise this mesh.
Definition at line 99 of file OgreMesh.cpp. References Ogre::Mesh::mSubMeshList. Referenced by Ogre::Entity::buildSubEntityList(), Ogre::Mesh::buildTangentVectors(), Ogre::MeshSerializerImpl::calcMeshSize(), Ogre::MeshSerializerImpl::readMeshLodInfo(), Ogre::MeshSerializerImpl_v1::readMeshLodUsageGenerated(), Ogre::MeshSerializerImpl::readMeshLodUsageGenerated(), Ogre::MeshSerializerImpl::writeLodUsageGenerated(), and Ogre::MeshSerializerImpl::writeMesh(). |
|
Retrieves info about the size of the resource.
Definition at line 93 of file OgreResource.h. Referenced by Ogre::ResourceManager::unload(). |
|
Gets a pointer to any linked Skeleton.
Definition at line 362 of file OgreMesh.cpp. References Ogre::Mesh::mSkeleton. Referenced by Ogre::Entity::_updateRenderQueue(), Ogre::Entity::attachObjectToBone(), and Ogre::Entity::cacheBoneMatrices(). |
|
Gets the name of any linked Skeleton.
Definition at line 665 of file OgreMesh.cpp. References Ogre::Mesh::mSkeletonName. Referenced by Ogre::MeshSerializerImpl::calcMeshSize(), and Ogre::MeshSerializerImpl::writeMesh(). |
|
Gets a SubMesh by name.
Definition at line 111 of file OgreMesh.cpp. References Ogre::Mesh::_getSubMeshIndex(), Ogre::Mesh::getSubMesh(), and Ogre::ushort. |
|
Gets a pointer to the submesh indicated by the index.
Definition at line 117 of file OgreMesh.cpp. References Ogre::Mesh::mSubMeshList. Referenced by Ogre::Entity::buildSubEntityList(), Ogre::Mesh::buildTangentVectors(), Ogre::MeshSerializerImpl::calcMeshSize(), Ogre::Node::getRenderOperation(), Ogre::Mesh::getSubMesh(), Ogre::MeshSerializerImpl::readMeshLodInfo(), Ogre::MeshSerializerImpl_v1::readMeshLodUsageGenerated(), Ogre::MeshSerializerImpl::readMeshLodUsageGenerated(), setSubdivision(), Ogre::MeshSerializerImpl::writeLodUsageGenerated(), and Ogre::MeshSerializerImpl::writeMesh(). |
|
Internal method for getting or creating a 3D texture coord buffer to hold tangents.
Definition at line 868 of file OgreMesh.cpp. References Ogre::VertexDeclaration::addElement(), Ogre::VertexDeclaration::findElementBySemantic(), Ogre::VertexBufferBinding::getBuffer(), Ogre::VertexBufferBinding::getNextIndex(), Ogre::VertexElement::getSource(), Ogre::VertexElement::getType(), Ogre::VertexDeclaration::removeElement(), Ogre::VertexBufferBinding::setBinding(), Ogre::VertexBufferBinding::unsetBinding(), Ogre::VertexData::vertexBufferBinding, Ogre::VertexData::vertexCount, Ogre::VertexData::vertexDeclaration, Ogre::VES_TEXTURE_COORDINATES, and Ogre::VET_FLOAT3. Referenced by Ogre::Mesh::buildTangentVectors(). |
|
Gets the usage setting for this meshes vertex buffers.
Definition at line 484 of file OgreMesh.h. Referenced by Ogre::MeshSerializerImpl_v1_1::readGeometryTexCoords(). |
|
Returns true if this Mesh has a linked Skeleton.
Definition at line 357 of file OgreMesh.cpp. References Ogre::Mesh::mSkeletonName. Referenced by Ogre::Entity::_updateRenderQueue(), Ogre::Entity::attachObjectToBone(), Ogre::Entity::cacheBoneMatrices(), Ogre::MeshSerializerImpl::calcMeshSize(), Ogre::Entity::Entity(), and Ogre::MeshSerializerImpl::writeMesh(). |
|
Gets whether or not this meshes index buffers are shadowed.
Definition at line 490 of file OgreMesh.h. |
|
Returns true if the Resource has been loaded, false otherwise.
Definition at line 127 of file OgreResource.h. Referenced by Ogre::GpuProgramUsage::_load(), Ogre::Technique::isLoaded(), Ogre::D3D9Texture::load(), Ogre::D3D9Texture::unload(), and Ogre::D3D9Texture::~D3D9Texture(). |
|
Returns true if this mesh is using manual LOD.
Definition at line 425 of file OgreMesh.h. Referenced by Ogre::Entity::_updateRenderQueue(), Ogre::Entity::cacheBoneMatrices(), Ogre::Entity::Entity(), Ogre::MeshSerializerImpl::readMeshLodInfo(), and Ogre::MeshSerializerImpl::writeLodInfo(). |
|
Gets whether or not this meshes vertex buffers are shadowed.
Definition at line 488 of file OgreMesh.h. Referenced by Ogre::MeshSerializerImpl_v1_1::readGeometryTexCoords(). |
|
|
Gives a name to a SubMesh.
Definition at line 105 of file OgreMesh.cpp. References Ogre::Mesh::mSubMeshNameMap, and Ogre::ushort. Referenced by Ogre::Mesh::createSubMesh(). |
|
Removes all LOD data from this Mesh.
Definition at line 825 of file OgreMesh.cpp. References Ogre::Mesh::MeshLodUsage::fromDepthSquared, Ogre::Mesh::mIsLodManual, Ogre::Mesh::mMeshLodUsageList, Ogre::Mesh::mNumLods, and Ogre::Mesh::mSubMeshList. |
|
Sets the policy for the index buffers to be used when loading this Mesh.
Definition at line 862 of file OgreMesh.cpp. References Ogre::Mesh::mIndexBufferShadowBuffer, and Ogre::Mesh::mIndexBufferUsage. Referenced by Ogre::MeshManager::load(). |
|
Call this to indicate that this Mesh will be manually defined rather than loaded from a file.
Definition at line 187 of file OgreMesh.cpp. References Ogre::Mesh::mManuallyDefined. Referenced by Ogre::MeshManager::createBezierPatch(), and Ogre::MeshManager::createManual(). |
|
Sets the name of the skeleton this Mesh uses for animation.
Definition at line 327 of file OgreMesh.cpp. References Ogre::Skeleton::load(), Ogre::Resource::mName, Ogre::Mesh::mSkeleton, and Ogre::Mesh::mSkeletonName. Referenced by Ogre::Mesh::Mesh(), and Ogre::MeshSerializerImpl::readSkeletonLink(). |
|
Definition at line 56 of file OgrePatchMesh.cpp. References Ogre::PatchSurface::getCurrentIndexCount(), Ogre::Mesh::getSubMesh(), Ogre::IndexData::indexCount, Ogre::SubMesh::indexData, mSurface, Ogre::Real, and Ogre::PatchSurface::setSubdivisionFactor(). |
|
Sets the policy for the vertex buffers to be used when loading this Mesh.
Definition at line 856 of file OgreMesh.cpp. References Ogre::Mesh::mVertexBufferShadowBuffer, and Ogre::Mesh::mVertexBufferUsage. Referenced by Ogre::MeshManager::load(), and Ogre::MeshSerializerImpl::readMesh(). |
|
'Touches' the resource to indicate it has been used.
Reimplemented in Ogre::Material. Definition at line 100 of file OgreResource.h. Referenced by Ogre::ResourceManager::load(). |
|
Generic unload - called by MeshManager.
Reimplemented from Ogre::Resource. Definition at line 167 of file OgreMesh.cpp. References Ogre::Resource::mIsLoaded, Ogre::Mesh::mSubMeshList, Ogre::Mesh::mSubMeshNameMap, and Ogre::Mesh::sharedVertexData. Referenced by Ogre::Mesh::load(), and Ogre::Mesh::~Mesh(). |
|
Changes the alternate mesh to use as a manual LOD at the given index.
Definition at line 753 of file OgreMesh.cpp. References Ogre::Mesh::MeshLodUsage::manualMesh, Ogre::Mesh::MeshLodUsage::manualName, Ogre::Mesh::mIsLodManual, Ogre::Mesh::mMeshLodUsageList, and Ogre::ushort. |
|
Local bounding box volume.
Definition at line 121 of file OgreMesh.h. Referenced by Ogre::Mesh::_setBounds(), Ogre::Mesh::clone(), Ogre::Mesh::getBounds(), Ogre::MeshSerializerImpl_v1::readGeometry(), and Ogre::MeshSerializerImpl::writeBoundsInfo(). |
|
Definition at line 148 of file OgreMesh.h. Referenced by Ogre::Mesh::compileBoneAssignmentsHardware(). |
|
Definition at line 136 of file OgreMesh.h. Referenced by Ogre::Mesh::_compileBoneAssignments(), Ogre::Mesh::addBoneAssignment(), Ogre::Mesh::clearBoneAssignments(), Ogre::Mesh::clone(), Ogre::Mesh::getBoneAssignmentIterator(), and Ogre::MeshSerializerImpl::writeMesh(). |
|
Flag indicating that bone assignments need to be recompiled.
Definition at line 139 of file OgreMesh.h. Referenced by Ogre::Mesh::_compileBoneAssignments(), Ogre::Mesh::addBoneAssignment(), Ogre::Mesh::clearBoneAssignments(), Ogre::Mesh::clone(), and Ogre::Mesh::Mesh(). |
|
Local bounding sphere radius (centered on object).
Definition at line 123 of file OgreMesh.h. Referenced by Ogre::Mesh::_setBoundingSphereRadius(), Ogre::Mesh::_setBounds(), Ogre::Mesh::clone(), Ogre::Mesh::getBoundingSphereRadius(), Ogre::Mesh::Mesh(), Ogre::MeshSerializerImpl_v1::readGeometry(), and Ogre::MeshSerializerImpl::writeBoundsInfo(). |
|
Vertex declaration, cloned from the input.
Definition at line 44 of file OgrePatchMesh.h. |
|
Definition at line 57 of file OgreResource.h. Referenced by Ogre::ResourceManager::add(), Ogre::Material::clone(), Ogre::Material::copyDetailsTo(), and Ogre::Material::operator=(). |
|
Definition at line 160 of file OgreMesh.h. Referenced by Ogre::Mesh::clone(), load(), Ogre::Mesh::Mesh(), PatchMesh(), Ogre::MeshSerializerImpl::readGeometryPositions(), Ogre::MeshSerializerImpl_v1::readMeshLodUsageGenerated(), Ogre::MeshSerializerImpl::readMeshLodUsageGenerated(), Ogre::MeshSerializerImpl_v1::readSubMesh(), Ogre::MeshSerializerImpl::readSubMesh(), and Ogre::Mesh::setIndexBufferPolicy(). |
|
Definition at line 158 of file OgreMesh.h. Referenced by Ogre::Mesh::clone(), load(), Ogre::Mesh::Mesh(), PatchMesh(), Ogre::MeshSerializerImpl_v1::readMeshLodUsageGenerated(), Ogre::MeshSerializerImpl::readMeshLodUsageGenerated(), Ogre::MeshSerializerImpl_v1::readSubMesh(), Ogre::MeshSerializerImpl::readSubMesh(), and Ogre::Mesh::setIndexBufferPolicy(). |
|
|
Definition at line 152 of file OgreMesh.h. Referenced by Ogre::Mesh::_setLodInfo(), Ogre::Mesh::clone(), Ogre::Mesh::createManualLodLevel(), Ogre::Mesh::generateLodLevels(), Ogre::Mesh::getLodLevel(), Ogre::Mesh::Mesh(), Ogre::MeshSerializerImpl::readMeshLodInfo(), Ogre::Mesh::removeLodLevels(), and Ogre::Mesh::updateManualLodLevel(). |
|
Definition at line 59 of file OgreResource.h. Referenced by Ogre::Material::operator=(). |
|
Definition at line 125 of file OgreMesh.h. Referenced by Ogre::Mesh::load(), Ogre::Mesh::Mesh(), and Ogre::Mesh::setManuallyDefined(). |
|
Definition at line 155 of file OgreMesh.h. Referenced by Ogre::Mesh::_setLodInfo(), Ogre::Mesh::_setLodUsage(), Ogre::Mesh::clone(), Ogre::Mesh::createManualLodLevel(), Ogre::Mesh::generateLodLevels(), Ogre::Mesh::getLodIndexSquaredDepth(), Ogre::Mesh::getLodLevel(), Ogre::Mesh::Mesh(), Ogre::MeshSerializerImpl::readMeshLodInfo(), Ogre::Mesh::removeLodLevels(), and Ogre::Mesh::updateManualLodLevel(). |
|
|
Definition at line 153 of file OgreMesh.h. Referenced by Ogre::Mesh::_setLodInfo(), Ogre::Mesh::clone(), Ogre::Mesh::createManualLodLevel(), Ogre::Mesh::generateLodLevels(), Ogre::Mesh::getNumLodLevels(), Ogre::Mesh::Mesh(), Ogre::MeshSerializerImpl::readMeshLodInfo(), and Ogre::Mesh::removeLodLevels(). |
|
Definition at line 60 of file OgreResource.h. Referenced by Ogre::D3D9Texture::_setFinalAttributes(), Ogre::D3DTexture::loadImage(), Ogre::D3DTexture::loadImage3D(), Ogre::GLTexture::loadImages(), and Ogre::Material::operator=(). |
|
Definition at line 133 of file OgreMesh.h. Referenced by Ogre::Mesh::_getBoneMatrices(), Ogre::Mesh::_getNumBoneMatrices(), Ogre::Mesh::_initAnimationState(), Ogre::Mesh::_notifySkeleton(), Ogre::Mesh::clone(), Ogre::Mesh::getSkeleton(), and Ogre::Mesh::setSkeletonName(). |
|
Optional linked skeleton.
Definition at line 132 of file OgreMesh.h. Referenced by Ogre::Mesh::_notifySkeleton(), Ogre::Mesh::clone(), Ogre::Mesh::getSkeletonName(), Ogre::Mesh::hasSkeleton(), and Ogre::Mesh::setSkeletonName(). |
|
A list of submeshes which make up this mesh. Each mesh is made up of 1 or more submeshes, which are each based on a single material and can have their own vertex data (they may not - they can share vertex data from the Mesh, depending on preference). Definition at line 109 of file OgreMesh.h. Referenced by Ogre::Mesh::_initAnimationState(), Ogre::Mesh::_setLodInfo(), Ogre::Mesh::_setSubMeshLodFaceList(), Ogre::Mesh::clone(), Ogre::Mesh::createSubMesh(), Ogre::Mesh::generateLodLevels(), Ogre::Mesh::getNumSubMeshes(), Ogre::Mesh::getSubMesh(), Ogre::Mesh::removeLodLevels(), and Ogre::Mesh::unload(). |
|
Definition at line 118 of file OgreMesh.h. Referenced by Ogre::Mesh::_getSubMeshIndex(), Ogre::Mesh::clone(), Ogre::Mesh::nameSubMesh(), and Ogre::Mesh::unload(). |
|
Internal surface definition.
Definition at line 42 of file OgrePatchMesh.h. Referenced by load(), PatchMesh(), and setSubdivision(). |
|
Option whether to use software or hardware blending, there are tradeoffs to both.
Definition at line 150 of file OgreMesh.h. Referenced by Ogre::SubMesh::_compileBoneAssignments(), Ogre::Mesh::clone(), and Ogre::Mesh::Mesh(). |
|
Definition at line 159 of file OgreMesh.h. Referenced by Ogre::Mesh::clone(), load(), Ogre::Mesh::Mesh(), PatchMesh(), Ogre::MeshSerializerImpl_v1::readGeometry(), Ogre::MeshSerializerImpl::readGeometryColours(), Ogre::MeshSerializerImpl::readGeometryNormals(), Ogre::MeshSerializerImpl::readGeometryTexCoords(), and Ogre::Mesh::setVertexBufferPolicy(). |
|
Definition at line 157 of file OgreMesh.h. Referenced by Ogre::Mesh::clone(), load(), Ogre::Mesh::Mesh(), PatchMesh(), Ogre::MeshSerializerImpl_v1::readGeometry(), Ogre::MeshSerializerImpl::readGeometryColours(), Ogre::MeshSerializerImpl::readGeometryNormals(), Ogre::MeshSerializerImpl::readGeometryPositions(), Ogre::MeshSerializerImpl::readGeometryTexCoords(), and Ogre::Mesh::setVertexBufferPolicy(). |
|
Shared vertex data.
Definition at line 224 of file OgreMesh.h. Referenced by Ogre::Mesh::_compileBoneAssignments(), Ogre::SubMesh::_getRenderOperation(), Ogre::Mesh::buildTangentVectors(), Ogre::MeshSerializerImpl::calcMeshSize(), Ogre::Mesh::clone(), Ogre::MeshManager::createCurvedIllusionPlane(), Ogre::MeshManager::createCurvedPlane(), Ogre::MeshManager::createPlane(), Ogre::MeshManager::createPrefabPlane(), Ogre::Mesh::generateLodLevels(), Ogre::Mesh::Mesh(), Ogre::MeshSerializerImpl_v1::readMesh(), Ogre::MeshSerializerImpl::readMesh(), Ogre::Mesh::unload(), and Ogre::MeshSerializerImpl::writeMesh(). |
Copyright © 2002-2003 by The OGRE Team
Last modified Wed Jan 21 00:19:07 2004