📄 threejs/Core/Animation/AnimationUtils

File: AnimationUtils.md | Updated: 11/15/2025


title: AnimationUtils category: Core layout: docs

AnimationUtils

A class with various methods to assist with animations.

Static Methods

.convertArray( array : TypedArray | Array, type : TypedArray.constructor ) : TypedArray

Converts an array to a specific type

array | The array to convert.
---|---
type | The constructor of a type array.

Returns: The converted array

.flattenJSON( jsonKeys : Array.<number>, times : Array.<number>, values : Array.<number>, valuePropertyName : string )

Used for parsing AOS keyframe formats.

jsonKeys | A list of JSON keyframes.
---|---
times | This array will be filled with keyframe times by this method.
values | This array will be filled with keyframe values by this method.
valuePropertyName | The name of the property to use.

.getKeyframeOrder( times : Array.<number> ) : Array.<number>

Returns an array by which times and values can be sorted.

times | The keyframe time values.
---|---

Returns: The array.

.isTypedArray( object : any ) : boolean

Returns true if the given object is a typed array.

object | The object to check.
---|---

Returns: Whether the given object is a typed array.

.makeClipAdditive( targetClip : AnimationClip, referenceFrame : number, referenceClip : AnimationClip, fps : number ) : AnimationClip

Converts the keyframes of the given animation clip to an additive format.

targetClip | The clip to make additive.
---|---
referenceFrame | The reference frame. Default is 0.
referenceClip | The reference clip. Default is targetClip.
fps | The FPS. Default is 30.

Returns: The updated clip which is now additive.

.sortedArray( values : Array.<number>, stride : number, order : Array.<number> ) : Array.<number>

Sorts the given array by the previously computed order via getKeyframeOrder().

values | The values to sort.
---|---
stride | The stride.
order | The sort order.

Returns: The sorted values.

.subclip( sourceClip : AnimationClip, name : string, startFrame : number, endFrame : number, fps : number ) : AnimationClip

Creates a new clip, containing only the segment of the original clip between the given frames.

sourceClip | The values to sort.
---|---
name | The name of the clip.
startFrame | The start frame.
endFrame | The end frame.
fps | The FPS. Default is 30.

Returns: The new sub clip.

Source

src/animation/AnimationUtils.js