Public Member Functions | List of all members
ISkeletalMesh Interface Referenceabstract

Represents a Skeletal Mesh object. More...

#include <lmcore.h>

Inherits IObject, and IControllerTarget.

Public Member Functions

virtual void SetBaseMesh (IMesh *pBaseMesh)=0
 Set the skin mesh. More...
 
virtual IMeshGetBaseMesh ()=0
 Get the skin mesh. More...
 
virtual void AddBone (BoneSceneNode *pBoneNode)=0
 Add a bone to the collection of bones that influences the model vertices. More...
 
virtual u32 GetNumBones ()=0
 Get the number of bones that influeces the model vertices. More...
 
virtual BoneSceneNode * GetBone (u32 boneIndex)=0
 Access the bones given its index. More...
 
virtual ISceneNodeGetBoneRoot ()=0
 Get the root bone of skeleton structure. More...
 
virtual void SetBoneRoot (ISceneNode *pNodeRoot)=0
 Set the bone hierarchy. More...
 
virtual Vec3f * GetTransformedVertices ()=0
 Get a pointer to the tranformed vertices array after calling Update() method. More...
 
virtual u32 GetNumTransformedVertices ()=0
 Get the number of transformed vertices in the array. More...
 
virtual void SetBindShapeMatrix (const System::Core::Matrix4 &bindShapeMatrix)=0
 Set the Bind shape matrix. More...
 
virtual const System::Core::Matrix4GetBindShapeMatrix ()=0
 Get the bind shape matrix currently set. More...
 
virtual void ClearVertexInfluences ()=0
 Clear the vertex influence table. More...
 
virtual void RemoveVertexInfluence (u32 influenceIndex)=0
 Remove vertex influence entry from the influence table. More...
 
virtual void AddVertexInfluence (const VertexInfluence &influence)=0
 Add vertex influence entry in the influence table. More...
 
virtual u32 GetNumVertexInfluences ()=0
 Get the number of vertex influences. More...
 
virtual const VertexInfluence & GetVertexInfluence (u32 index)=0
 Get the vertex influence at a given index within the influence table. More...
 
virtual void SetVertexInfluence (u32 entryIndex, const VertexInfluence &vertexInfluence)=0
 Set the vertex influence entry within the vertex influence table. More...
 
virtual void Update ()=0
 Update the skeletal mesh using the current bone configuration and vertex influences set. More...
 
- Public Member Functions inherited from IObject
virtual u32 Grab ()=0
 Increments the reference count of the object by one. More...
 
virtual u32 Drop ()=0
 Decrements the reference count of the object by one. More...
 
virtual u32 GetRefCount ()=0
 Get the reference count of the object. More...
 
virtual ResultCode QueryData (u32 dataId, Variant &data)=0
 Query an information from the object. More...
 
virtual void SetName (const c8 *objName)=0
 Set a friendly/user defined name of this object. More...
 
virtual const c8 * GetName ()=0
 Returns the user defined/friendly name of this object. More...
 
virtual const c8 * GetId ()=0
 Get the unique id of this object. More...
 
virtual void SetId (const c8 *objId)=0
 Set an Id for the object. More...
 
virtual const TypeId & GetType ()=0
 Returns the type id of the object. More...
 

Detailed Description

Represents a Skeletal Mesh object.

Member Function Documentation

◆ AddBone()

virtual void ISkeletalMesh::AddBone ( BoneSceneNode *  pBoneNode)
pure virtual

Add a bone to the collection of bones that influences the model vertices.

Parameters
bBoneNodeThe bone node to add.

◆ AddVertexInfluence()

virtual void ISkeletalMesh::AddVertexInfluence ( const VertexInfluence &  influence)
pure virtual

Add vertex influence entry in the influence table.

Parameters
influenceThe vertex influence entry descriptor

◆ ClearVertexInfluences()

virtual void ISkeletalMesh::ClearVertexInfluences ( )
pure virtual

Clear the vertex influence table.

◆ GetBaseMesh()

virtual IMesh* ISkeletalMesh::GetBaseMesh ( )
pure virtual

Get the skin mesh.

Returns
The skin mesh

◆ GetBindShapeMatrix()

virtual const System::Core::Matrix4& ISkeletalMesh::GetBindShapeMatrix ( )
pure virtual

Get the bind shape matrix currently set.

Returns
The bind shape matrix currently set.

◆ GetBone()

virtual BoneSceneNode* ISkeletalMesh::GetBone ( u32  boneIndex)
pure virtual

Access the bones given its index.

Parameters
boneIndexThe bone index
Returns
The bone scene node

◆ GetBoneRoot()

virtual ISceneNode* ISkeletalMesh::GetBoneRoot ( )
pure virtual

Get the root bone of skeleton structure.

Returns
Get the root node of the bone hierarchy.

◆ GetNumBones()

virtual u32 ISkeletalMesh::GetNumBones ( )
pure virtual

Get the number of bones that influeces the model vertices.

Returns
The number of bones.

◆ GetNumTransformedVertices()

virtual u32 ISkeletalMesh::GetNumTransformedVertices ( )
pure virtual

Get the number of transformed vertices in the array.

Returns
by the GetTransformedVertices() method.

◆ GetNumVertexInfluences()

virtual u32 ISkeletalMesh::GetNumVertexInfluences ( )
pure virtual

Get the number of vertex influences.

Returns
The number of vertex influences.

◆ GetTransformedVertices()

virtual Vec3f* ISkeletalMesh::GetTransformedVertices ( )
pure virtual

Get a pointer to the tranformed vertices array after calling Update() method.

Returns
Pointer to an array containing the transformed vertices.

◆ GetVertexInfluence()

virtual const VertexInfluence& ISkeletalMesh::GetVertexInfluence ( u32  index)
pure virtual

Get the vertex influence at a given index within the influence table.

Parameters
indexThe entry index.

◆ RemoveVertexInfluence()

virtual void ISkeletalMesh::RemoveVertexInfluence ( u32  influenceIndex)
pure virtual

Remove vertex influence entry from the influence table.

Parameters
influenceIndexThe vertex influence table entry index.

◆ SetBaseMesh()

virtual void ISkeletalMesh::SetBaseMesh ( IMesh pBaseMesh)
pure virtual

Set the skin mesh.

Parameters
pBaseMeshThe skin mesh object

◆ SetBindShapeMatrix()

virtual void ISkeletalMesh::SetBindShapeMatrix ( const System::Core::Matrix4 bindShapeMatrix)
pure virtual

Set the Bind shape matrix.

Parameters
bindShapeMatrixThe bind shape matrix

◆ SetBoneRoot()

virtual void ISkeletalMesh::SetBoneRoot ( ISceneNode pNodeRoot)
pure virtual

Set the bone hierarchy.

Parameters
pNodeRootThe root node of bone hierarchy.

◆ SetVertexInfluence()

virtual void ISkeletalMesh::SetVertexInfluence ( u32  entryIndex,
const VertexInfluence &  vertexInfluence 
)
pure virtual

Set the vertex influence entry within the vertex influence table.

Parameters
entryIndexIndex of the vertex influence table entry.
vertexInfluenceThe vertex influence descriptor.

◆ Update()

virtual void ISkeletalMesh::Update ( )
pure virtual

Update the skeletal mesh using the current bone configuration and vertex influences set.