Mirror Engine
V5
How To
Mirror Engine Logo

Mirror Engine API


Mirror Engine API / AnimComponentLayer

Class: AnimComponentLayer

The Anim Component Layer allows managers a single layer of the animation state graph.

activeState

Get Signature

get activeState(): string

Gets the currently active state name.

Returns

string


activeStateCurrentTime

Get Signature

get activeStateCurrentTime(): number

Gets the active state's time in seconds.

Returns

number

Set Signature

set activeStateCurrentTime(time: number): void

Sets the active state's time in seconds.

Parameters
time

number

Returns

void


activeStateDuration

Get Signature

get activeStateDuration(): number

Gets the currently active states duration.

Returns

number


activeStateProgress

Get Signature

get activeStateProgress(): number

Gets the currently active state's progress as a value normalized by the state's animation duration. Looped animations will return values greater than 1.

Returns

number


mask

Get Signature

get mask(): any

Gets the mask of bones which should be animated or ignored by this layer.

Returns

any

Set Signature

set mask(value: any): void

Sets the mask of bones which should be animated or ignored by this layer.

Example
entity.anim.baseLayer.mask = {
  // include the spine of the current model and all of its children
  'path/to/spine': {
    children: true
  },
  // include the hip of the current model but not all of its children
  'path/to/hip': true
}
Parameters
value

any

Returns

void


name

Get Signature

get name(): string

Returns the name of the layer.

Returns

string


playable

Get Signature

get playable(): boolean

Returns true if a state graph has been loaded and all states in the graph have been assigned animation tracks.

Returns

boolean


playing

Get Signature

get playing(): boolean

Gets whether this layer is currently playing.

Returns

boolean

Set Signature

set playing(value: boolean): void

Sets whether this layer is currently playing.

Parameters
value

boolean

Returns

void


previousState

Get Signature

get previousState(): null | string

Gets the previously active state name.

Returns

null | string


states

Get Signature

get states(): string[]

Gets all available states in this layers state graph.

Returns

string[]


transitioning

Get Signature

get transitioning(): boolean

Gets whether the anim component layer is currently transitioning between states.

Returns

boolean


transitionProgress

Get Signature

get transitionProgress(): null | number

Gets the progress, if the anim component layer is currently transitioning between states. Otherwise returns null.

Returns

null | number


weight

Get Signature

get weight(): number

Sets the blending weight of this layer.

Returns

number

Set Signature

set weight(value: number): void

Sets the blending weight of this layer. Used when calculating the value of properties that are animated by more than one layer.

Parameters
value

number

Returns

void

Methods

assignAnimation()

assignAnimation(
   nodePath: string,
   animTrack: AnimTrack,
   speed?: number,
   loop?: boolean): void

Assigns an animation track to a state or blend tree node in the current graph. If a state for the given nodePath doesn't exist, it will be created. If all states nodes are linked and the AnimComponent#activate value was set to true then the component will begin playing.

Parameters

nodePath

string

Either the state name or the path to a blend tree node that this animation should be associated with. Each section of a blend tree path is split using a period (.) therefore state names should not include this character (e.g "MyStateName" or "MyStateName.BlendTreeNode").

animTrack

AnimTrack

The animation track that will be assigned to this state and played whenever this state is active.

speed?

number

Update the speed of the state you are assigning an animation to. Defaults to 1.

loop?

boolean

Update the loop property of the state you are assigning an animation to. Defaults to true.

Returns

void


blendToWeight()

blendToWeight(weight: number, time: number): void

Blend from the current weight value to the provided weight value over a given amount of time.

Parameters

weight

number

The new weight value to blend to.

time

number

The duration of the blend in seconds.

Returns

void


getAnimationAsset()

getAnimationAsset(stateName: string): {
  asset: number;
}

Returns an object holding the animation asset id that is associated with the given state.

Parameters

stateName

string

The name of the state to get the asset for.

Returns

{
  asset: number
}

An object containing the animation asset id associated with the given state.

asset
asset: number

pause()

pause(): void

Pause the animation in the current state.

Returns

void


play()

play(name?: string): void

Start playing the animation in the current state.

Parameters

name?

string

If provided, will begin playing from the start of the state with this name.

Returns

void


rebind()

rebind(): void

Rebind any animations in the layer to the currently present components and model of the anim components entity.

Returns

void


removeNodeAnimations()

removeNodeAnimations(nodeName: string): void

Removes animations from a node in the loaded state graph.

Parameters

nodeName

string

The name of the node that should have its animation tracks removed.

Returns

void


reset()

reset(): void

Reset the animation component to its initial state, including all parameters. The system will be paused.

Returns

void


transition()

transition(
   to: string,
   time?: number,
   transitionOffset?: number): void

Transition to any state in the current layers graph. Transitions can be instant or take an optional blend time.

Parameters

to

string

The state that this transition will transition to.

time?

number = 0

The duration of the transition in seconds. Defaults to 0.

transitionOffset?

number = null

If provided, the destination state will begin playing its animation at this time. Given in normalized time, based on the states duration & must be between 0 and 1. Defaults to null.

Returns

void

Mirror Engine Logo