Assimp v5.2.2 (January 2022)
The Asset-Importer-Lib API documentation.
aiAnimMesh Struct Reference

An AnimMesh is an attachment to an aiMesh stores per-vertex animations for a particular frame. More...

#include <mesh.h>

Public Member Functions

 aiAnimMesh () AI_NO_EXCEPT
 
bool HasNormals () const
 Check whether the anim mesh overrides the vertex normals of its host mesh. More...
 
bool HasPositions () const
 Check whether the anim mesh overrides the vertex positions of its host mesh. More...
 
bool HasTangentsAndBitangents () const
 Check whether the anim mesh overrides the vertex tangents and bitangents of its host mesh. More...
 
bool HasTextureCoords (unsigned int pIndex) const
 Check whether the anim mesh overrides a particular set of texture coordinates on his host mesh. More...
 
bool HasVertexColors (unsigned int pIndex) const
 Check whether the anim mesh overrides a particular set of vertex colors on his host mesh. More...
 
 ~aiAnimMesh ()
 

Public Attributes

C_STRUCT aiVector3DmBitangents
 Replacement for aiMesh::mBitangents. More...
 
C_STRUCT aiColor4DmColors [AI_MAX_NUMBER_OF_COLOR_SETS]
 Replacement for aiMesh::mColors. More...
 
C_STRUCT aiString mName
 Anim Mesh name. More...
 
C_STRUCT aiVector3DmNormals
 Replacement for aiMesh::mNormals. More...
 
unsigned int mNumVertices
 The number of vertices in the aiAnimMesh, and thus the length of all the member arrays. More...
 
C_STRUCT aiVector3DmTangents
 Replacement for aiMesh::mTangents. More...
 
C_STRUCT aiVector3DmTextureCoords [AI_MAX_NUMBER_OF_TEXTURECOORDS]
 Replacement for aiMesh::mTextureCoords. More...
 
C_STRUCT aiVector3DmVertices
 Replacement for aiMesh::mVertices. More...
 
float mWeight
 Weight of the AnimMesh. More...
 

Detailed Description

An AnimMesh is an attachment to an aiMesh stores per-vertex animations for a particular frame.

You may think of an aiAnimMesh as a patch for the host mesh, which replaces only certain vertex data streams at a particular time. Each mesh stores n attached attached meshes (aiMesh::mAnimMeshes). The actual relationship between the time line and anim meshes is established by aiMeshAnim, which references singular mesh attachments by their ID and binds them to a time offset.

Constructor & Destructor Documentation

◆ aiAnimMesh()

aiAnimMesh::aiAnimMesh ( )
inline

◆ ~aiAnimMesh()

aiAnimMesh::~aiAnimMesh ( )
inline

Member Function Documentation

◆ HasNormals()

bool aiAnimMesh::HasNormals ( ) const
inline

Check whether the anim mesh overrides the vertex normals of its host mesh.

◆ HasPositions()

bool aiAnimMesh::HasPositions ( ) const
inline

Check whether the anim mesh overrides the vertex positions of its host mesh.

◆ HasTangentsAndBitangents()

bool aiAnimMesh::HasTangentsAndBitangents ( ) const
inline

Check whether the anim mesh overrides the vertex tangents and bitangents of its host mesh.

As for aiMesh, tangents and bitangents always go together.

◆ HasTextureCoords()

bool aiAnimMesh::HasTextureCoords ( unsigned int  pIndex) const
inline

Check whether the anim mesh overrides a particular set of texture coordinates on his host mesh.

Parameters
pIndex0<index

◆ HasVertexColors()

bool aiAnimMesh::HasVertexColors ( unsigned int  pIndex) const
inline

Check whether the anim mesh overrides a particular set of vertex colors on his host mesh.

Parameters
pIndex0<index

Member Data Documentation

◆ mBitangents

C_STRUCT aiVector3D* aiAnimMesh::mBitangents

Replacement for aiMesh::mBitangents.

◆ mColors

Replacement for aiMesh::mColors.

◆ mName

C_STRUCT aiString aiAnimMesh::mName

Anim Mesh name.

◆ mNormals

C_STRUCT aiVector3D* aiAnimMesh::mNormals

Replacement for aiMesh::mNormals.


◆ mNumVertices

unsigned int aiAnimMesh::mNumVertices

The number of vertices in the aiAnimMesh, and thus the length of all the member arrays.

This has always the same value as the mNumVertices property in the corresponding aiMesh. It is duplicated here merely to make the length of the member arrays accessible even if the aiMesh is not known, e.g. from language bindings.

◆ mTangents

C_STRUCT aiVector3D* aiAnimMesh::mTangents

Replacement for aiMesh::mTangents.

◆ mTextureCoords

C_STRUCT aiVector3D* aiAnimMesh::mTextureCoords[AI_MAX_NUMBER_OF_TEXTURECOORDS]

Replacement for aiMesh::mTextureCoords.

◆ mVertices

C_STRUCT aiVector3D* aiAnimMesh::mVertices

Replacement for aiMesh::mVertices.

If this array is non-nullptr, it must contain mNumVertices entries. The corresponding array in the host mesh must be non-nullptr as well - animation meshes may neither add or nor remove vertex components (if a replacement array is nullptr and the corresponding source array is not, the source data is taken instead)

◆ mWeight

float aiAnimMesh::mWeight

Weight of the AnimMesh.


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