Skip to content

Documentation / scene / SkeletonRig

Class: SkeletonRig

Defined in: libs/scene/src/animation/skeleton.ts:162

Shared joint rig for skeletal animation.

A rig owns the animated joint nodes, bind pose, humanoid mapping and procedural modifiers. Multiple skin bindings may reference the same rig with different inverse bind matrices.

Extends

  • Disposable

Constructors

Constructor

new SkeletonRig(joints, bindPose, options?): SkeletonRig

Defined in: libs/scene/src/animation/skeleton.ts:177

Parameters

joints

SceneNode[]

bindPose

SkeletonBindPose[]

options?

SkeletonRigOptions

Returns

SkeletonRig

Overrides

Disposable.constructor

Properties

_id

protected _id: string

Defined in: libs/scene/src/animation/skeleton.ts:164


_joints

protected _joints: SceneNode[]

Defined in: libs/scene/src/animation/skeleton.ts:165


_bindPoseByJoint

protected _bindPoseByJoint: Map<SceneNode, SkeletonBindPose>

Defined in: libs/scene/src/animation/skeleton.ts:166


_bindPose

protected _bindPose: SkeletonBindPose[]

Defined in: libs/scene/src/animation/skeleton.ts:167


_retargetPoseByJoint

protected _retargetPoseByJoint: Map<SceneNode>

Defined in: libs/scene/src/animation/skeleton.ts:168


_retargetPose

protected _retargetPose: SkeletonBindPose[]

Defined in: libs/scene/src/animation/skeleton.ts:169


_rootJoint

protected _rootJoint: SceneNode

Defined in: libs/scene/src/animation/skeleton.ts:170


_rootBindPose

protected _rootBindPose: SkeletonBindPose

Defined in: libs/scene/src/animation/skeleton.ts:171


_playing

protected _playing: boolean

Defined in: libs/scene/src/animation/skeleton.ts:172


_modifiers

protected _modifiers: SkeletonModifier[]

Defined in: libs/scene/src/animation/skeleton.ts:173


_humanoidJointMapping

protected _humanoidJointMapping: HumanoidJointMapping<SceneNode>

Defined in: libs/scene/src/animation/skeleton.ts:174


_humanoidRootRotation

protected _humanoidRootRotation: Quaternion

Defined in: libs/scene/src/animation/skeleton.ts:175

Accessors

disposed

Get Signature

get disposed(): boolean

Defined in: libs/base/dist/index.d.ts:6107

Returns

boolean

Inherited from

Disposable.disposed


persistentId

Get Signature

get persistentId(): string

Defined in: libs/scene/src/animation/skeleton.ts:230

Returns

string

Set Signature

set persistentId(val): void

Defined in: libs/scene/src/animation/skeleton.ts:234

Parameters
val

string

Returns

void


joints

Get Signature

get joints(): SceneNode[]

Defined in: libs/scene/src/animation/skeleton.ts:246

Returns

SceneNode[]


bindPose

Get Signature

get bindPose(): SkeletonBindPose[]

Defined in: libs/scene/src/animation/skeleton.ts:250

Returns

SkeletonBindPose[]


retargetPose

Get Signature

get retargetPose(): SkeletonBindPose[]

Defined in: libs/scene/src/animation/skeleton.ts:255

Effective humanoid retarget reference pose.

Returns

SkeletonBindPose[]


hasRetargetPose

Get Signature

get hasRetargetPose(): boolean

Defined in: libs/scene/src/animation/skeleton.ts:260

Whether this rig has a reference pose that is distinct from its bind pose.

Returns

boolean


rootJoint

Get Signature

get rootJoint(): SceneNode

Defined in: libs/scene/src/animation/skeleton.ts:264

Returns

SceneNode

Set Signature

set rootJoint(joint): void

Defined in: libs/scene/src/animation/skeleton.ts:268

Parameters
joint

SceneNode

Returns

void


rootBindPose

Get Signature

get rootBindPose(): SkeletonBindPose

Defined in: libs/scene/src/animation/skeleton.ts:273

Returns

SkeletonBindPose


humanoidJointMapping

Get Signature

get humanoidJointMapping(): HumanoidJointMapping<SceneNode>

Defined in: libs/scene/src/animation/skeleton.ts:285

Returns

HumanoidJointMapping<SceneNode>


humanoidRootRotation

Get Signature

get humanoidRootRotation(): Quaternion

Defined in: libs/scene/src/animation/skeleton.ts:289

Returns

Quaternion


modifiers

Get Signature

get modifiers(): SkeletonModifier[]

Defined in: libs/scene/src/animation/skeleton.ts:293

Returns

SkeletonModifier[]


playing

Get Signature

get playing(): boolean

Defined in: libs/scene/src/animation/skeleton.ts:297

Returns

boolean

Set Signature

set playing(b): void

Defined in: libs/scene/src/animation/skeleton.ts:301

Parameters
b

boolean

Returns

void

Methods

on()

on<K>(type, listener, context?): void

Defined in: libs/base/dist/index.d.ts:630

IEventTarget.on

Type Parameters

K

K extends "dispose"

Parameters

type

K

listener

EventListener<{ dispose: []; }, K>

context?

unknown

Returns

void

Inherited from

Disposable.on


once()

once<K>(type, listener, context?): void

Defined in: libs/base/dist/index.d.ts:634

IEventTarget.once

Type Parameters

K

K extends "dispose"

Parameters

type

K

listener

EventListener<{ dispose: []; }, K>

context?

unknown

Returns

void

Inherited from

Disposable.once


off()

off<K>(type, listener?, context?): void

Defined in: libs/base/dist/index.d.ts:638

IEventTarget.off

Type Parameters

K

K extends "dispose"

Parameters

type

K

listener?

EventListener<{ dispose: []; }>

context?

unknown

Returns

void

Inherited from

Disposable.off


dispatchEvent()

dispatchEvent<K>(type, ...args): void

Defined in: libs/base/dist/index.d.ts:642

IEventTarget.dispatchEvent

Type Parameters

K

K extends "dispose"

Parameters

type

K

args

...object[K]

Returns

void

Inherited from

Disposable.dispatchEvent


dispose()

dispose(): void

Defined in: libs/base/dist/index.d.ts:6108

Returns

void

Inherited from

Disposable.dispose


getRigKey()

static getRigKey(joints, rootJoint?): string

Defined in: libs/scene/src/animation/skeleton.ts:217

Parameters

joints

SceneNode[]

rootJoint?

SceneNode

Returns

string


findRigById()

static findRigById(id): SkeletonRig

Defined in: libs/scene/src/animation/skeleton.ts:221

Parameters

id

string

Returns

SkeletonRig


getBindPoseForJoint()

getBindPoseForJoint(joint): SkeletonBindPose

Defined in: libs/scene/src/animation/skeleton.ts:277

Parameters

joint

SceneNode

Returns

SkeletonBindPose


getRetargetPoseForJoint()

getRetargetPoseForJoint(joint): SkeletonBindPose

Defined in: libs/scene/src/animation/skeleton.ts:281

Parameters

joint

SceneNode

Returns

SkeletonBindPose


getJointIndex()

getJointIndex(joint): number

Defined in: libs/scene/src/animation/skeleton.ts:305

Parameters

joint

SceneNode

Returns

number


getJointIndexByName()

getJointIndexByName(jointName): number

Defined in: libs/scene/src/animation/skeleton.ts:309

Parameters

jointName

string

Returns

number


computeBindPose()

computeBindPose(): void

Defined in: libs/scene/src/animation/skeleton.ts:313

Returns

void


apply()

apply(deltaTime): void

Defined in: libs/scene/src/animation/skeleton.ts:328

Parameters

deltaTime

number

Returns

void


reset()

reset(): void

Defined in: libs/scene/src/animation/skeleton.ts:334

Returns

void


onDispose()

protected onDispose(): void

Defined in: libs/scene/src/animation/skeleton.ts:338

Returns

void

Overrides

Disposable.onDispose

Released under the MIT License.