OGRE-Next: Ogre::VerticesRemapInfo Struct Reference

| OGRE-Next 3.0.0 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | List of all members
Ogre::VerticesRemapInfo Struct Reference

`#include <OgreVertexRemapping.h>`

## Public Types
enum | { UnusedIdx = (unsigned)-1 }

## Public Member Functions
| VerticesRemapInfo ()
v1::HardwareVertexBufferSharedPtr | getRemappedVertexBuffer (v1::HardwareBufferManagerBase *pHWBufferManager, v1::HardwareVertexBufferSharedPtr vb, size_t srcStart, size_t srcCount) const
void | initialize (size_t originalVertexCount, bool skipReorderingIfNothingToStrip=true)
template<typename IDX>
void | markUsedIndices (IDX *indices, size_t indexCount)
void | markUsedIndices (v1::IndexData *indexData)
IndexType | minimalIndexType () const
void | performAnimationTrackRemap (v1::HardwareBufferManagerBase *pHWBufferManager, v1::VertexAnimationTrack *track) const
template<class MeshOrSubmesh>
void | performBoneAssignmentRemap (MeshOrSubmesh *m) const
void | performBoneAssignmentRemap (v1::SubMesh *dst, v1::Mesh *src) const
void | performIndexDataRemap (v1::HardwareBufferManagerBase *pHWBufferManager, v1::IndexData *indexData) const
void | performPoseRemap (v1::Pose *pose) const
void | performVertexDataRemap (v1::HardwareBufferManagerBase *pHWBufferManager, v1::VertexData *vertexData) const
void | renumerate ()
bool | skipProcessing () const

## Public Attributes
vector< unsigned >::type | indexMap
bool | skipReorderingIfNotStripping
unsigned | usedCount

## Member Enumeration Documentation

## ◆ anonymous enum

anonymous enum

Enumerator
UnusedIdx |

## Constructor & Destructor Documentation

## ◆ VerticesRemapInfo()

Ogre::VerticesRemapInfo::VerticesRemapInfo | ( |  | ) |
| inline

References usedCount.

## Member Function Documentation

## ◆ getRemappedVertexBuffer()

v1::HardwareVertexBufferSharedPtr Ogre::VerticesRemapInfo::getRemappedVertexBuffer | ( | v1::HardwareBufferManagerBase * | pHWBufferManager,
|  | v1::HardwareVertexBufferSharedPtr | vb,
|  | size_t | srcStart,
|  | size_t | srcCount ) const
| inline

References Ogre::v1::HardwareBufferManagerBase::createVertexBuffer(), Ogre::v1::HardwareBuffer::HBL_DISCARD, Ogre::v1::HardwareBuffer::HBL_READ_ONLY, indexMap, Ogre::v1::HardwareBufferLockGuard::pData, skipProcessing(), UnusedIdx, and usedCount.

Referenced by performAnimationTrackRemap(), and performVertexDataRemap().

## ◆ initialize()

void Ogre::VerticesRemapInfo::initialize | ( | size_t | originalVertexCount,
|  | bool | skipReorderingIfNothingToStrip = true )
| inline

References indexMap, skipReorderingIfNotStripping, UnusedIdx, and usedCount.

## ◆ markUsedIndices() [1/2]

template<typename IDX>

void Ogre::VerticesRemapInfo::markUsedIndices | ( | IDX * | indices,
|  | size_t | indexCount )
| inline

References indexMap, UnusedIdx, and usedCount.

Referenced by markUsedIndices().

## ◆ markUsedIndices() [2/2]

void Ogre::VerticesRemapInfo::markUsedIndices | ( | v1::IndexData * | indexData | ) |
| inline

References Ogre::v1::HardwareBuffer::HBL_READ_ONLY, Ogre::v1::IndexData::indexBuffer, Ogre::v1::IndexData::indexCount, Ogre::v1::IndexData::indexStart, Ogre::v1::HardwareIndexBuffer::IT_32BIT, markUsedIndices(), and Ogre::v1::HardwareBufferLockGuard::pData.

## ◆ minimalIndexType()

IndexType Ogre::VerticesRemapInfo::minimalIndexType | ( |  | ) | const
| inline

References Ogre::IT_16BIT, Ogre::IT_32BIT, and usedCount.

Referenced by performIndexDataRemap().

## ◆ performAnimationTrackRemap()

void Ogre::VerticesRemapInfo::performAnimationTrackRemap | ( | v1::HardwareBufferManagerBase * | pHWBufferManager,
|  | v1::VertexAnimationTrack * | track ) const
| inline

References Ogre::v1::VertexAnimationTrack::getAnimationType(), Ogre::v1::AnimationTrack::getNumKeyFrames(), getRemappedVertexBuffer(), Ogre::v1::VertexMorphKeyFrame::getVertexBuffer(), Ogre::v1::VertexAnimationTrack::getVertexMorphKeyFrame(), Ogre::v1::VertexMorphKeyFrame::setVertexBuffer(), skipProcessing(), and Ogre::v1::VAT_MORPH.

## ◆ performBoneAssignmentRemap() [1/2]

template<class MeshOrSubmesh>

void Ogre::VerticesRemapInfo::performBoneAssignmentRemap | ( | MeshOrSubmesh * | m | ) | const
| inline

References indexMap, skipProcessing(), UnusedIdx, and Ogre::v1::VertexBoneAssignment_s::vertexIndex.

Referenced by Ogre::Lod0Stripifier::StripLod0Vertices().

## ◆ performBoneAssignmentRemap() [2/2]

void Ogre::VerticesRemapInfo::performBoneAssignmentRemap | ( | v1::SubMesh * | dst,
|  | v1::Mesh * | src ) const
| inline

References Ogre::v1::SubMesh::addBoneAssignment(), Ogre::v1::Mesh::getBoneAssignments(), indexMap, skipProcessing(), UnusedIdx, and Ogre::v1::VertexBoneAssignment_s::vertexIndex.

## ◆ performIndexDataRemap()

void Ogre::VerticesRemapInfo::performIndexDataRemap | ( | v1::HardwareBufferManagerBase * | pHWBufferManager,
|  | v1::IndexData * | indexData ) const
| inline

References Ogre::v1::HardwareBufferManagerBase::createIndexBuffer(), Ogre::v1::HardwareIndexBuffer::getIndexSize(), Ogre::v1::HardwareIndexBuffer::getType(), Ogre::v1::HardwareBuffer::getUsage(), Ogre::v1::HardwareBuffer::hasShadowBuffer(), Ogre::v1::HardwareBuffer::HBL_DISCARD, Ogre::v1::HardwareBuffer::HBL_READ_ONLY, Ogre::v1::IndexData::indexBuffer, Ogre::v1::IndexData::indexCount, indexMap, Ogre::v1::IndexData::indexStart, Ogre::v1::HardwareIndexBuffer::IT_16BIT, Ogre::v1::HardwareIndexBuffer::IT_32BIT, minimalIndexType(), Ogre::v1::HardwareBufferLockGuard::pData, skipProcessing(), and Ogre::v1::HardwareBufferLockGuard::unlock().

Referenced by Ogre::Lod0Stripifier::StripLod0Vertices().

## ◆ performPoseRemap()

void Ogre::VerticesRemapInfo::performPoseRemap | ( | v1::Pose * | pose | ) | const
| inline

References Ogre::v1::Pose::addVertex(), Ogre::v1::Pose::clearVertices(), Ogre::v1::Pose::getIncludesNormals(), Ogre::v1::Pose::getNormals(), Ogre::v1::Pose::getVertexOffsets(), indexMap, skipProcessing(), and UnusedIdx.

## ◆ performVertexDataRemap()

void Ogre::VerticesRemapInfo::performVertexDataRemap | ( | v1::HardwareBufferManagerBase * | pHWBufferManager,
|  | v1::VertexData * | vertexData ) const
| inline

References Ogre::v1::VertexBufferBinding::getBindings(), getRemappedVertexBuffer(), Ogre::v1::VertexData::hardwareShadowVolWBuffer, Ogre::v1::VertexData::hwAnimationDataList, Ogre::v1::VertexData::hwAnimDataItemsUsed, Ogre::v1::VertexBufferBinding::setBinding(), skipProcessing(), usedCount, Ogre::v1::VertexData::vertexBufferBinding, Ogre::v1::VertexData::vertexCount, and Ogre::v1::VertexData::vertexStart.

Referenced by Ogre::Lod0Stripifier::StripLod0Vertices().

## ◆ renumerate()

void Ogre::VerticesRemapInfo::renumerate | ( |  | ) |
| inline

References indexMap, UnusedIdx, and usedCount.

## ◆ skipProcessing()

bool Ogre::VerticesRemapInfo::skipProcessing | ( |  | ) | const
| inline

References indexMap, skipReorderingIfNotStripping, and usedCount.

Referenced by getRemappedVertexBuffer(), performAnimationTrackRemap(), performBoneAssignmentRemap(), performBoneAssignmentRemap(), performIndexDataRemap(), performPoseRemap(), and performVertexDataRemap().

## Member Data Documentation

## ◆ indexMap

vector<unsigned>::type Ogre::VerticesRemapInfo::indexMap

Referenced by getRemappedVertexBuffer(), initialize(), markUsedIndices(), performBoneAssignmentRemap(), performBoneAssignmentRemap(), performIndexDataRemap(), performPoseRemap(), renumerate(), and skipProcessing().

## ◆ skipReorderingIfNotStripping

bool Ogre::VerticesRemapInfo::skipReorderingIfNotStripping

Referenced by initialize(), and skipProcessing().

## ◆ usedCount

unsigned Ogre::VerticesRemapInfo::usedCount

Referenced by VerticesRemapInfo(), getRemappedVertexBuffer(), initialize(), markUsedIndices(), minimalIndexType(), performVertexDataRemap(), renumerate(), and skipProcessing().

The documentation for this struct was generated from the following file:

- OgreVertexRemapping.h