Legendary Explorer Core Nightly
Core library for working with Mass Effect Trilogy / Legendary Edition files
Loading...
Searching...
No Matches
AnimSequencePlayer Class Reference

Pure math class that handles skeleton bind-pose computation, animation track mapping, and per-frame skinning matrix computation. No rendering dependency. More...

Inheritance diagram for AnimSequencePlayer:
AnimPlayer

Public Member Functions

 AnimSequencePlayer (SkeletalMesh skeletalMesh)
 
void SetAnimation (AnimSequence animSequence)
 Maps animation bone names to skeleton bone indices and prepares for playback. More...
 
override void SetCurrentTime (float time)
 
override Matrix4x4[] ComputeSkinningMatrices ()
 Computes skinning matrices for the current frame. Returns the array of skinning matrices (InverseBindPose * AnimatedComponentSpace). More...
 
- Public Member Functions inherited from AnimPlayer
abstract void SetCurrentTime (float time)
 
abstract Matrix4x4[] ComputeSkinningMatrices ()
 
void AdvanceTime (float dt)
 
void ApplyBonePositions (BonePosition[] bonePosition)
 

Properties

NameReference AnimName [get]
 
int TotalFrames [get]
 
override float Duration [get]
 
override float StartTime [get]
 
override float EndTime [get]
 
override bool HasAnimation [get]
 
int CurrentFrame [get, set]
 
int BoneCount [get]
 
- Properties inherited from AnimPlayer
Matrix4x4[] BoneComponentSpaceTransforms [get]
 
float CurrentTime [get, set]
 
bool IsPlaying [get, set]
 
bool IsLooping = true [get, set]
 
float PlaybackSpeed = 1f [get, set]
 
abstract bool HasAnimation [get]
 
abstract float Duration [get]
 
abstract float StartTime [get]
 
abstract float EndTime [get]
 

Additional Inherited Members

- Protected Member Functions inherited from AnimPlayer
 AnimPlayer (SkeletalMesh skeletalMesh)
 
- Protected Attributes inherited from AnimPlayer
readonly MeshBone[] _bones
 
Matrix4x4[] _inverseBindPose
 
Matrix4x4[] _skinningMatrices
 
Matrix4x4[] _boneComponentSpace
 

Detailed Description

Pure math class that handles skeleton bind-pose computation, animation track mapping, and per-frame skinning matrix computation. No rendering dependency.

Builds bind-pose transforms from a SkeletalMesh's RefSkeleton.

Constructor & Destructor Documentation

◆ AnimSequencePlayer()

AnimSequencePlayer.AnimSequencePlayer ( SkeletalMesh  skeletalMesh)
inline

Member Function Documentation

◆ SetAnimation()

void AnimSequencePlayer.SetAnimation ( AnimSequence  animSequence)
inline

Maps animation bone names to skeleton bone indices and prepares for playback.

◆ SetCurrentTime()

override void AnimSequencePlayer.SetCurrentTime ( float  time)
inlinevirtual

Implements AnimPlayer.

◆ ComputeSkinningMatrices()

override Matrix4x4[] AnimSequencePlayer.ComputeSkinningMatrices ( )
inlinevirtual

Computes skinning matrices for the current frame. Returns the array of skinning matrices (InverseBindPose * AnimatedComponentSpace).

Implements AnimPlayer.

Property Documentation

◆ AnimName

NameReference AnimSequencePlayer.AnimName
get

◆ TotalFrames

int AnimSequencePlayer.TotalFrames
get

◆ Duration

override float AnimSequencePlayer.Duration
get

◆ StartTime

override float AnimSequencePlayer.StartTime
get

◆ EndTime

override float AnimSequencePlayer.EndTime
get

◆ HasAnimation

override bool AnimSequencePlayer.HasAnimation
get

◆ CurrentFrame

int AnimSequencePlayer.CurrentFrame
getset

◆ BoneCount

int AnimSequencePlayer.BoneCount
get

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