#include <StdMesh.h>
Public Types | |
enum | NodeType { LeafNode , CustomNode , LinearInterpolationNode } |
typedef StdMeshInstanceAnimationNode | AnimationNode |
typedef StdMeshInstanceValueProvider | ValueProvider |
Public Member Functions | |
StdMeshInstanceAnimationNode () | |
StdMeshInstanceAnimationNode (const StdMeshAnimation *animation, ValueProvider *position) | |
StdMeshInstanceAnimationNode (const StdMeshBone *bone, const StdMeshTransformation &trans) | |
StdMeshInstanceAnimationNode (AnimationNode *child_left, AnimationNode *child_right, ValueProvider *weight) | |
~StdMeshInstanceAnimationNode () | |
bool | GetBoneTransform (unsigned int bone, StdMeshTransformation &transformation) |
int | GetSlot () const |
unsigned int | GetNumber () const |
NodeType | GetType () const |
AnimationNode * | GetParent () |
const StdMeshAnimation * | GetAnimation () const |
ValueProvider * | GetPositionProvider () |
C4Real | GetPosition () const |
AnimationNode * | GetLeftChild () |
AnimationNode * | GetRightChild () |
ValueProvider * | GetWeightProvider () |
C4Real | GetWeight () const |
void | CompileFunc (StdCompiler *pComp, const StdMesh *Mesh) |
void | DenumeratePointers () |
void | ClearPointers (class C4Object *pObj) |
Protected Attributes | |
int | Slot |
unsigned int | Number |
NodeType | Type {LeafNode} |
AnimationNode * | Parent {nullptr} |
union { | |
struct { | |
const StdMeshAnimation * | Animation |
ValueProvider * | Position |
} | Leaf |
struct { | |
unsigned int | BoneIndex |
StdMeshTransformation * | Transformation |
} | Custom |
struct { | |
AnimationNode * | ChildLeft |
AnimationNode * | ChildRight |
ValueProvider * | Weight |
} | LinearInterpolation |
}; | |
Friends | |
class | StdMeshInstance |
class | StdMeshUpdate |
class | StdMeshAnimationUpdate |
Enumerator | |
---|---|
LeafNode | |
CustomNode | |
LinearInterpolationNode |
Definition at line 335 of file StdMesh.h.
StdMeshInstanceAnimationNode::StdMeshInstanceAnimationNode | ( | ) |
Definition at line 787 of file StdMesh.cpp.
StdMeshInstanceAnimationNode::StdMeshInstanceAnimationNode | ( | const StdMeshAnimation * | animation, |
ValueProvider * | position | ||
) |
Definition at line 793 of file StdMesh.cpp.
StdMeshInstanceAnimationNode::StdMeshInstanceAnimationNode | ( | const StdMeshBone * | bone, |
const StdMeshTransformation & | trans | ||
) |
Definition at line 799 of file StdMesh.cpp.
References StdMeshBone::Index.
StdMeshInstanceAnimationNode::StdMeshInstanceAnimationNode | ( | AnimationNode * | child_left, |
AnimationNode * | child_right, | ||
ValueProvider * | weight | ||
) |
Definition at line 806 of file StdMesh.cpp.
StdMeshInstanceAnimationNode::~StdMeshInstanceAnimationNode | ( | ) |
Definition at line 814 of file StdMesh.cpp.
References CustomNode, LeafNode, LinearInterpolationNode, and Type.
void StdMeshInstanceAnimationNode::ClearPointers | ( | class C4Object * | pObj | ) |
Definition at line 953 of file StdMesh.cpp.
References StdMeshInstance::SerializableValueProvider::ClearPointers(), CustomNode, LeafNode, LinearInterpolationNode, and Type.
Referenced by StdMeshInstance::ClearPointers().
void StdMeshInstanceAnimationNode::CompileFunc | ( | StdCompiler * | pComp, |
const StdMesh * | Mesh | ||
) |
Definition at line 864 of file StdMesh.cpp.
References CustomNode, StdCompiler::excCorrupt(), StdMeshSkeleton::GetAnimationByName(), StdMeshSkeleton::GetBone(), StdMeshSkeleton::GetBoneByName(), StdStrBuf::getData(), StdMesh::GetSkeleton(), StdMeshBone::Index, StdCompiler::isDeserializer(), LeafNode, LinearInterpolationNode, mkDecompileAdapt(), mkNamingAdapt(), mkNamingPtrAdapt(), mkParAdapt(), StdMeshBone::Name, Number, StdCompiler::RCT_All, Slot, toC4CStrBuf, Type, and StdCompiler::Value().
void StdMeshInstanceAnimationNode::DenumeratePointers | ( | ) |
Definition at line 933 of file StdMesh.cpp.
References CustomNode, StdMeshInstance::SerializableValueProvider::DenumeratePointers(), LeafNode, LinearInterpolationNode, and Type.
Referenced by StdMeshInstance::DenumeratePointers().
|
inline |
Definition at line 350 of file StdMesh.h.
References LeafNode, and Type.
Referenced by C4ValueProviderAction::Execute(), and StdMeshInstance::ExecuteAnimationNode().
bool StdMeshInstanceAnimationNode::GetBoneTransform | ( | unsigned int | bone, |
StdMeshTransformation & | transformation | ||
) |
Definition at line 832 of file StdMesh.cpp.
References CustomNode, fixtof(), StdMeshTrack::GetTransformAt(), LeafNode, LinearInterpolationNode, StdMeshTransformation::Nlerp(), and Type.
|
inline |
Definition at line 354 of file StdMesh.h.
References LinearInterpolationNode, and Type.
Referenced by StdMeshInstance::ExecuteAnimationNode().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 355 of file StdMesh.h.
References LinearInterpolationNode, and Type.
Referenced by StdMeshInstance::ExecuteAnimationNode().
|
inline |
|
inline |
Definition at line 347 of file StdMesh.h.
References Type.
Referenced by StdMeshInstance::ExecuteAnimationNode(), StdMeshInstance::SetAnimationBoneTransform(), StdMeshInstance::SetAnimationPosition(), and StdMeshInstance::SetAnimationWeight().
|
inline |
Definition at line 357 of file StdMesh.h.
References LinearInterpolationNode, and Type.
Referenced by StdMeshInstance::ExecuteAnimationNode().
|
inline |
Definition at line 356 of file StdMesh.h.
References LinearInterpolationNode, and Type.
Referenced by StdMeshInstance::ExecuteAnimationNode().
|
friend |
|
friend |
|
friend |
union { ... } |
|
protected |
Definition at line 365 of file StdMesh.h.
Referenced by StdMeshInstance::CompileFunc(), CompileFunc(), GetNumber(), StdMeshInstance::InsertAnimationNode(), and StdMeshInstance::StopAnimation().
|
protected |
Definition at line 367 of file StdMesh.h.
Referenced by GetParent(), StdMeshInstance::InsertAnimationNode(), and StdMeshInstance::StopAnimation().
|
protected |
Definition at line 364 of file StdMesh.h.
Referenced by StdMeshInstance::CompileFunc(), CompileFunc(), GetSlot(), StdMeshInstance::InsertAnimationNode(), and StdMeshInstance::StopAnimation().
Definition at line 366 of file StdMesh.h.
Referenced by ClearPointers(), StdMeshInstance::CompileFunc(), CompileFunc(), DenumeratePointers(), GetAnimation(), GetBoneTransform(), GetLeftChild(), GetPosition(), GetPositionProvider(), GetRightChild(), GetType(), GetWeight(), GetWeightProvider(), StdMeshInstance::StopAnimation(), and ~StdMeshInstanceAnimationNode().