Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface AnimationAction

AnimationActions schedule the performance of the animations which are stored in AnimationClips. Note: Most of AnimationAction's methods can be chained. For an overview of the different elements of the three.js animation system see the "Animation System" article in the "Next Steps" section of the manual.

There are two events indicating when a single loop of the action respectively the entire action has finished. You can react to them with: mixer.addEventListener( 'loop', function( e ) { …} ); // properties of e: type, action and loopDelta mixer.addEventListener( 'finished', function( e ) { …} ); // properties of e: type, action and direction

Hierarchy

  • AnimationAction

Index

Constructors

constructor

Properties

blendMode

clampWhenFinished

clampWhenFinished: boolean

If clampWhenFinished is set to true the animation will automatically be .paused on its last frame. If clampWhenFinished is set to false, .enabled will automatically be switched to false when the last loop of the action has finished, so that this action has no further impact. Default is false. Note: clampWhenFinished has no impact if the action is interrupted (it has only an effect if its last loop has really finished).

default

false

enabled

enabled: boolean

Setting enabled to false disables this action, so that it has no impact. Default is true. When the action is re-enabled, the animation continues from its current .time (setting enabled to false doesn't reset the action). Note: Setting enabled to true doesn’t automatically restart the animation. Setting enabled to true will only restart the animation immediately if the following condition is fulfilled: .paused is false, this action has not been deactivated in the meantime (by executing a .stop or .reset command), and neither .weight nor .timeScale is 0.

default

true

loop

The looping mode (can be changed with .setLoop). Default is THREE.LoopRepeat (with an infinite number of .repetitions) Must be one of these constants: THREE.LoopOnce - playing the clip once, THREE.LoopRepeat - playing the clip with the chosen number of repetitions, each time jumping from the end of the clip directly to its beginning, THREE.LoopPingPong - playing the clip with the chosen number of repetitions, alternately playing forward and backward.

default

THREE.LoopRepeat

paused

paused: boolean

Setting paused to true pauses the execution of the action by setting the effective time scale to 0. Default is false.

default

false

repetitions

repetitions: number

The number of repetitions of the performed AnimationClip over the course of this action. Can be set via .setLoop. Default is Infinity. Setting this number has no effect, if the .loop is set to THREE.LoopOnce.

default

Infinity

time

time: number

The local time of this action (in seconds, starting with 0). The value gets clamped or wrapped to 0...clip.duration (according to the loop state). It can be scaled relatively to the global mixer time by changing .timeScale (using .setEffectiveTimeScale or .setDuration).

default

0

timeScale

timeScale: number

Scaling factor for the .time. A value of 0 causes the animation to pause. Negative values cause the animation to play backwards. Default is 1. Properties/methods concerning timeScale (respectively time) are: .getEffectiveTimeScale, .halt, .paused, .setDuration, .setEffectiveTimeScale, .stopWarping, .syncWith, .warp.

default

1

weight

weight: number

The degree of influence of this action (in the interval [0, 1]). Values between 0 (no impact) and 1 (full impact) can be used to blend between several actions. Default is 1. Properties/methods concerning weight are: .crossFadeFrom, .crossFadeTo, .enabled, .fadeIn, .fadeOut, .getEffectiveWeight, .setEffectiveWeight, .stopFading.

default

1

zeroSlopeAtEnd

zeroSlopeAtEnd: boolean

Enables smooth interpolation without separate clips for start, loop and end. Default is true.

default

true

zeroSlopeAtStart

zeroSlopeAtStart: boolean

Enables smooth interpolation without separate clips for start, loop and end. Default is true.

default

true

Methods

crossFadeFrom

  • Causes this action to .fadeIn, fading out another action simultaneously, within the passed time interval. This method can be chained. If warpBoolean is true, additional .warp (gradually changes of the time scales) will be applied. Note: Like with fadeIn / fadeOut, the fading starts/ends with a weight of 1.

    Parameters

    Returns AnimationAction

crossFadeTo

  • Causes this action to .fadeOut, fading in another action simultaneously, within the passed time interval. This method can be chained. If warpBoolean is true, additional .warp (gradually changes of the time scales) will be applied. Note: Like with fadeIn / fadeOut, the fading starts/ends with a weight of 1.

    Parameters

    Returns AnimationAction

fadeIn

fadeOut

getClip

getEffectiveTimeScale

  • getEffectiveTimeScale(): number

getEffectiveWeight

  • getEffectiveWeight(): number

getMixer

getRoot

halt

isRunning

  • isRunning(): boolean
  • In addition to being activated in the mixer (see .isScheduled) the following conditions must be fulfilled: .paused is equal to false, .enabled is equal to true, .timeScale is different from 0, and there is no scheduling for a delayed start (.startAt). Note: isRunning being true doesn’t necessarily mean that the animation can actually be seen. This is only the case, if .weight is additionally set to a non-zero value.

    Returns boolean

    Returns true if the action’s .time is currently running.

isScheduled

  • isScheduled(): boolean
  • Note: This doesn’t necessarily mean that the animation is actually running (compare the additional conditions for .isRunning).

    Returns boolean

    Returns true, if this action is activated in the mixer.

play

  • Tells the mixer to activate the action. This method can be chained. Note: Activating this action doesn’t necessarily mean that the animation starts immediately: If the action had already finished before (by reaching the end of its last loop), or if a time for a delayed start has been set (via .startAt), a .reset must be executed first. Some other settings (.paused=true, .enabled=false, .weight=0, .timeScale=0) can prevent the animation from playing, too.

    Returns AnimationAction

reset

  • Resets the action. This method can be chained. This method sets .paused to false, .enabled to true, .time to 0, interrupts any scheduled fading and warping, and removes the internal loop count and scheduling for delayed starting. Note: .reset is always called by .stop, but .reset doesn’t call .stop itself. This means: If you want both, resetting and stopping, don’t call .reset; call .stop instead.

    Returns AnimationAction

setDuration

setEffectiveTimeScale

  • Sets the .timeScale and stops any scheduled warping. This method can be chained. If .paused is false, the effective time scale (an internal property) will also be set to this value; otherwise the effective time scale (directly affecting the animation at this moment) will be set to 0. Note: .paused will not be switched to true automatically, if .timeScale is set to 0 by this method.

    Parameters

    • timeScale: number

    Returns AnimationAction

setEffectiveWeight

  • Sets the .weight and stops any scheduled fading. This method can be chained. If .enabled is true, the effective weight (an internal property) will also be set to this value; otherwise the effective weight (directly affecting the animation at this moment) will be set to 0. Note: .enabled will not be switched to false automatically, if .weight is set to 0 by this method.

    Parameters

    • weight: number

    Returns AnimationAction

setLoop

startAt

  • Defines the time for a delayed start (usually passed as AnimationMixer.time + deltaTimeInSeconds). This method can be chained. Note: The animation will only start at the given time, if .startAt is chained with .play, or if the action has already been activated in the mixer (by a previous call of .play, without stopping or resetting it in the meantime).

    Parameters

    • time: number

    Returns AnimationAction

stop

stopFading

stopWarping

syncWith

  • Synchronizes this action with the passed other action. This method can be chained. Synchronizing is done by setting this action’s .time and .timeScale values to the corresponding values of the other action (stopping any scheduled warping). Note: Future changes of the other action's time and timeScale will not be detected.

    Parameters

    Returns AnimationAction

warp

  • warp(statTimeScale: number, endTimeScale: number, duration: number): AnimationAction

Generated using TypeDoc