![]() |
OGRE 14.3
Object-Oriented Graphics Rendering Engine
|
A pose is a linked set of vertex offsets applying to one set of vertex data. More...
#include <OgrePose.h>
Inheritance diagram for Ogre::Pose:Public Types | |
| typedef ConstMapIterator< NormalsMap > | ConstNormalsIterator |
| An iterator over the vertex offsets. | |
| typedef ConstMapIterator< VertexOffsetMap > | ConstVertexOffsetIterator |
| An iterator over the vertex offsets. | |
| typedef MapIterator< NormalsMap > | NormalsIterator |
| An iterator over the vertex offsets. | |
| typedef std::map< uint32, Vector3f > | NormalsMap |
| A collection of normals based on the vertex index. | |
| typedef MapIterator< VertexOffsetMap > | VertexOffsetIterator |
| An iterator over the vertex offsets. | |
| typedef std::map< uint32, Vector3f > | VertexOffsetMap |
| A collection of vertex offsets based on the vertex index. | |
Public Member Functions | |
| Pose (ushort target, const String &name=BLANKSTRING) | |
| Constructor. | |
| const HardwareVertexBufferSharedPtr & | _getHardwareVertexBuffer (const VertexData *origData) const |
| Get a hardware vertex buffer version of the vertex offsets. | |
| NormalsMap & | _getNormals () |
| writable access to the vertex normals for offline processing | |
| VertexOffsetMap & | _getVertexOffsets () |
| writable access to the vertex offsets for offline processing | |
| void | addVertex (uint32 index, const Vector3f &offset) |
| Adds an offset to a vertex for this pose. | |
| void | addVertex (uint32 index, const Vector3f &offset, const Vector3f &normal) |
| Adds an offset to a vertex and a new normal for this pose. | |
| void | clearVertices (void) |
| Clear all vertices. | |
| Pose * | clone (void) const |
| Clone this pose and create another one configured exactly the same way (only really useful for cloning holders of this class). | |
| bool | getIncludesNormals () const |
| Return whether the pose vertices include normals. | |
| const String & | getName (void) const |
| Return the name of the pose (may be blank) | |
| const NormalsMap & | getNormals (void) const |
| Gets a const reference to the vertex normals. | |
| NormalsIterator | getNormalsIterator (void) |
| ConstNormalsIterator | getNormalsIterator (void) const |
| ushort | getTarget (void) const |
| Return the target geometry index of the pose. | |
| VertexOffsetIterator | getVertexOffsetIterator (void) |
| ConstVertexOffsetIterator | getVertexOffsetIterator (void) const |
| const VertexOffsetMap & | getVertexOffsets (void) const |
| Gets a const reference to the vertex offsets. | |
| void | removeVertex (uint32 index) |
| Remove a vertex offset. | |
A pose is a linked set of vertex offsets applying to one set of vertex data.
The target index referred to by the pose has a meaning set by the user of this class; but for example when used by Mesh it refers to either the Mesh shared geometry (0) or a SubMesh dedicated geometry (1+). Pose instances can be referred to by keyframes in VertexAnimationTrack in order to animate based on blending poses together.
| typedef std::map<uint32, Vector3f> Ogre::Pose::VertexOffsetMap |
A collection of vertex offsets based on the vertex index.
An iterator over the vertex offsets.
An iterator over the vertex offsets.
| typedef std::map<uint32, Vector3f> Ogre::Pose::NormalsMap |
A collection of normals based on the vertex index.
An iterator over the vertex offsets.
An iterator over the vertex offsets.
| Ogre::Pose::Pose | ( | ushort | target, |
| const String & | name = BLANKSTRING ) |
Constructor.
| target | The target vertexdata index (0 for shared, 1+ for dedicated at the submesh index + 1) |
| name | Optional name |
References Ogre::BLANKSTRING.
Referenced by clone().
|
inline |
Return the name of the pose (may be blank)
|
inline |
Return the target geometry index of the pose.
Referenced by Ogre::Lod0Stripifier::StripLod0Vertices().
|
inline |
Return whether the pose vertices include normals.
Adds an offset to a vertex for this pose.
| index | The vertex index |
| offset | The position offset for this pose |
Adds an offset to a vertex and a new normal for this pose.
| index | The vertex index |
| offset | The position offset for this pose |
| normal | The new vertex normal |
| void Ogre::Pose::removeVertex | ( | uint32 | index | ) |
Remove a vertex offset.
| void Ogre::Pose::clearVertices | ( | void | ) |
Clear all vertices.
| ConstVertexOffsetIterator Ogre::Pose::getVertexOffsetIterator | ( | void | ) | const |
| VertexOffsetIterator Ogre::Pose::getVertexOffsetIterator | ( | void | ) |
|
inline |
Gets a const reference to the vertex offsets.
| ConstNormalsIterator Ogre::Pose::getNormalsIterator | ( | void | ) | const |
| NormalsIterator Ogre::Pose::getNormalsIterator | ( | void | ) |
|
inline |
Gets a const reference to the vertex normals.
|
inline |
writable access to the vertex offsets for offline processing
|
inline |
writable access to the vertex normals for offline processing
| const HardwareVertexBufferSharedPtr & Ogre::Pose::_getHardwareVertexBuffer | ( | const VertexData * | origData | ) | const |
Get a hardware vertex buffer version of the vertex offsets.
| Pose * Ogre::Pose::clone | ( | void | ) | const |
Clone this pose and create another one configured exactly the same way (only really useful for cloning holders of this class).
References Pose(), and OGRE_NODISCARD.