Class: AnimatorComponent
Defined in: src/components/anim/AnimatorComponent.ts:16
Skeletal + blend-shape animation driver. Samples property-animation clips to pose an avatar's joints, supports clip cross-fading, stacked override/additive layers, a pluggable state machine, IK solvers and cross-rig retargeting, and dispatches blend-shape (morph) influences.
Extends
Constructors
Constructor
new AnimatorComponent():
AnimatorComponent
Returns
AnimatorComponent
Inherited from
Properties
object3D
object3D:
Object3D=null
Defined in: src/components/ComponentBase.ts:29
owner object3D
Inherited from
isDestroyed
isDestroyed:
boolean=false
Defined in: src/components/ComponentBase.ts:77
Inherited from
timeScale
timeScale:
number=1.0
Defined in: src/components/anim/AnimatorComponent.ts:18
Global playback speed multiplier applied to all clips and layers.
jointMatrixIndexTableBuffer
jointMatrixIndexTableBuffer:
StorageGPUBuffer
Defined in: src/components/anim/AnimatorComponent.ts:20
GPU buffer mapping joints to their world-matrix indices.
playBlendShapeLoop
playBlendShapeLoop:
boolean=false
Defined in: src/components/anim/AnimatorComponent.ts:22
Whether the blend-shape (morph) animation loops.
root
root:
Object3D
Defined in: src/components/anim/AnimatorComponent.ts:44
Accessors
visibleLayer
Get Signature
get visibleLayer():
number
Defined in: src/components/ComponentBase.ts:46
Composition-layer membership bitmask. The pass / camera / collector filters via
(component.visibleLayer & pass.layerMask & camera.cullingMask) !== 0
Defaults to VisibleLayer.Default (bit 0) so a fresh subclass is visible to passes whose layerMask is VisibleLayer.All (which includes bit 0). Application code can assign project-specific bits (1..31) to organise the scene into composition layers.
Returns
number
Set Signature
set visibleLayer(
value):void
Defined in: src/components/ComponentBase.ts:50
Parameters
value
number
Returns
void
Inherited from
eventDispatcher
Get Signature
get eventDispatcher():
CEventDispatcher
Defined in: src/components/ComponentBase.ts:63
Returns
Set Signature
set eventDispatcher(
value):void
Defined in: src/components/ComponentBase.ts:68
Parameters
value
Returns
void
Inherited from
isStart
Get Signature
get isStart():
boolean
Defined in: src/components/ComponentBase.ts:79
Returns
boolean
Inherited from
transform
Get Signature
get transform():
Transform
Defined in: src/components/ComponentBase.ts:89
Return the Transform component attached to the Object3D. Null before the component is attached — addComponent assigns object3D only after construction — so constructor-time callers can probe safely via this.transform?..
Returns
Inherited from
enable
Get Signature
get enable():
boolean
Defined in: src/components/ComponentBase.ts:113
Enable/disable components. The enabled components can be updated, while the disabled components cannot be updated.
Returns
boolean
Set Signature
set enable(
value):void
Defined in: src/components/ComponentBase.ts:96
Enable/disable components. The enabled components can be updated, while the disabled components cannot be updated.
Parameters
value
boolean
Returns
void
Inherited from
avatar
Set Signature
set avatar(
name):void
Defined in: src/components/anim/AnimatorComponent.ts:219
Assign the avatar (skeleton) by registered resource name and build its pose.
Parameters
name
string
Returns
void
numJoint
Get Signature
get numJoint():
number
Defined in: src/components/anim/AnimatorComponent.ts:232
Number of joints in the current avatar.
Returns
number
clips
Get Signature
get clips():
PropertyAnimationClip[]
Defined in: src/components/anim/AnimatorComponent.ts:377
The animation clips assigned to this animator.
Returns
Set Signature
set clips(
clips):void
Defined in: src/components/anim/AnimatorComponent.ts:358
Assign the animation clips, building per-clip state and auto-playing the first.
Parameters
clips
Returns
void
clipsState
Get Signature
get clipsState():
PropertyAnimationClipState[]
Defined in: src/components/anim/AnimatorComponent.ts:382
Per-clip playback state (weights, etc.).
Returns
layers
Get Signature
get layers(): readonly
AnimationLayer[]
Defined in: src/components/anim/AnimatorComponent.ts:677
All stacked layers (excluding the implicit base layer).
Returns
readonly AnimationLayer[]
Methods
stop()
stop():
void
Defined in: src/components/ComponentBase.ts:163
Returns
void
Inherited from
onEnable()?
optionalonEnable(view?):any
Defined in: src/components/ComponentBase.ts:164
Parameters
view?
Returns
any
Inherited from
onDisable()?
optionalonDisable(view?):any
Defined in: src/components/ComponentBase.ts:165
Parameters
view?
Returns
any
Inherited from
onLateUpdate()?
optionalonLateUpdate(view?):any
Defined in: src/components/ComponentBase.ts:167
Parameters
view?
Returns
any
Inherited from
onBeforeUpdate()?
optionalonBeforeUpdate(view?):any
Defined in: src/components/ComponentBase.ts:168
Parameters
view?
Returns
any
Inherited from
onCompute()?
optionalonCompute(view?,command?):any
Defined in: src/components/ComponentBase.ts:169
Parameters
view?
command?
GPUCommandEncoder
Returns
any
Inherited from
onGraphic()?
optionalonGraphic(view?):any
Defined in: src/components/ComponentBase.ts:170
Parameters
view?
Returns
any
Inherited from
onParentChange()?
optionalonParentChange(lastParent?,currentParent?):any
Defined in: src/components/ComponentBase.ts:171
Parameters
lastParent?
currentParent?
Returns
any
Inherited from
onAddChild()?
optionalonAddChild(child):any
Defined in: src/components/ComponentBase.ts:172
Parameters
child
Returns
any
Inherited from
onRemoveChild()?
optionalonRemoveChild(child):any
Defined in: src/components/ComponentBase.ts:173
Parameters
child
Returns
any
Inherited from
copyComponent()
copyComponent(
from):this
Defined in: src/components/ComponentBase.ts:182
Parameters
from
this
Returns
this
Inherited from
beforeDestroy()
beforeDestroy(
force?):void
Defined in: src/components/ComponentBase.ts:249
before release this component, object refrences are not be set null now.
Parameters
force?
boolean
Returns
void
Inherited from
destroy()
destroy(
force?):void
Defined in: src/components/ComponentBase.ts:256
release this component
Parameters
force?
boolean
Returns
void
Inherited from
init()
init(
param?):void
Defined in: src/components/anim/AnimatorComponent.ts:64
Collect skinned/morph renderers in the hierarchy and prepare caches.
Parameters
param?
any
Returns
void
Overrides
start()
start():
void
Defined in: src/components/anim/AnimatorComponent.ts:86
Re-parent the skeleton root once the (possibly cloned) hierarchy is wired.
Returns
void
Overrides
playAnim()
playAnim(
anim,time?,speed?):void
Defined in: src/components/anim/AnimatorComponent.ts:121
Play a skeleton animation clip immediately.
Parameters
anim
string
clip name
time?
number = 0
start time in seconds
speed?
number = 1
playback speed multiplier
Returns
void
crossFade()
crossFade(
anim,crossTime):void
Defined in: src/components/anim/AnimatorComponent.ts:142
Cross-fade from the current clip to another over crossTime seconds.
Parameters
anim
string
destination clip name
crossTime
number
fade duration in seconds
Returns
void
playBlendShape()
playBlendShape(
shapeName,time?,speed?):void
Defined in: src/components/anim/AnimatorComponent.ts:182
Play a blend-shape (morph) animation clip.
Parameters
shapeName
string
blend-shape clip name
time?
number = 0
start time in seconds
speed?
number = 1
playback speed multiplier
Returns
void
retargetTo()
retargetTo(
target,cfg?):void
Defined in: src/components/anim/AnimatorComponent.ts:199
Drive another animator's skeleton from this one via retargeting. Pass null to stop retargeting.
Parameters
target
AnimatorComponent
the animator to drive, or null to clear
cfg?
optional retargeting configuration
Returns
void
getJointIndexTable()
getJointIndexTable(
skinJointsName):number[]
Defined in: src/components/anim/AnimatorComponent.ts:240
Map a list of skin joint names to their avatar bone IDs (-1 if absent).
Parameters
skinJointsName
string[]
joint names in skin order
Returns
number[]
cloneTo()
cloneTo(
obj):void
Defined in: src/components/anim/AnimatorComponent.ts:387
Clone this animator (avatar + clips) onto another object.
Parameters
obj
Returns
void
Overrides
onUpdate()
onUpdate(
view?):void
Defined in: src/components/anim/AnimatorComponent.ts:420
Per-frame update: advance time, sample clips, apply layers, IK and morphs.
Parameters
view?
Returns
void
Overrides
updateBlendShape()
updateBlendShape(
attributes,key,value):void
Defined in: src/components/anim/AnimatorComponent.ts:526
Apply a blend-shape influence to all renderers, caching the resolved setter per renderer to avoid per-frame property reflection.
Parameters
attributes
string[]
property path to the setter
key
string
morph target name (cache key)
value
number
influence value in [0,1]
Returns
void
getAnimationClipState()
getAnimationClipState(
name):PropertyAnimationClipState
Defined in: src/components/anim/AnimatorComponent.ts:646
Gets the animation clip data object with the specified name
Parameters
name
string
Name of animation
Returns
Animation clip data object
cloneMorphRenderers()
cloneMorphRenderers():
object
Defined in: src/components/anim/AnimatorComponent.ts:656
Group the morph renderers by morph-target key.
Returns
object
getLayer()
getLayer(
name):AnimationLayer
Defined in: src/components/anim/AnimatorComponent.ts:673
Get a stacked animation layer by name, or null if absent.
Parameters
name
string
Returns
addLayer()
addLayer(
layer):AnimationLayer
Defined in: src/components/anim/AnimatorComponent.ts:680
Add a stacked animation layer (ignored if a layer with that name exists).
Parameters
layer
Returns
removeLayer()
removeLayer(
name):void
Defined in: src/components/anim/AnimatorComponent.ts:690
Remove a stacked animation layer by name.
Parameters
name
string
Returns
void
setLayerWeight()
setLayerWeight(
name,weight):void
Defined in: src/components/anim/AnimatorComponent.ts:696
Set the blend weight of a named layer.
Parameters
name
string
weight
number
Returns
void
setLayerClip()
setLayerClip(
name,clipName,time?,timeScale?):void
Defined in: src/components/anim/AnimatorComponent.ts:708
Set (and start) the clip playing on a named layer.
Parameters
name
string
layer name
clipName
string
clip to play on the layer
time?
number = 0
start time in seconds
timeScale?
number = 1.0
layer-local time scale
Returns
void
setStateMachine()
setStateMachine(
fsm):void
Defined in: src/components/anim/AnimatorComponent.ts:896
Attach (or clear) a state machine evaluated each frame before sampling.
Parameters
fsm
evaluate
Returns
void
getStateMachine()
getStateMachine():
object
Defined in: src/components/anim/AnimatorComponent.ts:900
The currently attached state machine, or null.
Returns
object
evaluate()
evaluate(
animator,dt):void
Parameters
animator
AnimatorComponent
dt
number
Returns
void
addIK()
addIK(
solver):void
Defined in: src/components/anim/AnimatorComponent.ts:909
Register an IK solver, run after layer mixing each frame.
Parameters
solver
solve
Returns
void
removeIK()
removeIK(
solver):void
Defined in: src/components/anim/AnimatorComponent.ts:913
Unregister a previously added IK solver.
Parameters
solver
solve
Returns
void
getJointObject()
getJointObject(
boneName):Object3D
Defined in: src/components/anim/AnimatorComponent.ts:919
Live joint Object3D by bone name. Used by IK solvers + retargeting.
Parameters
boneName
string
Returns
getRestJointObject()
getRestJointObject(
bonePath):Object3D
Defined in: src/components/anim/AnimatorComponent.ts:923
Rest-pose (T-pose) joint Object3D by bone path.
Parameters
bonePath
string
Returns
getAvatar()
getAvatar():
PrefabAvatarData
Defined in: src/components/anim/AnimatorComponent.ts:927
The current avatar (skeleton) data, or null.
Returns
PrefabAvatarData

