Skip to content

EntityAnimation

Entity animation factory - create animation descriptors for use with entity.play()

Static Methods

to()

javascript
EntityAnimation.to(toProperties: Object, duration: number, options?: Object): EntityAnimation

Animate to target properties

Example:

javascript
// Animate box upward
box.play(EntityAnimation.to(
    { position: Vector3(0, 2, 0) },
    1.0,
    { timingFunction: "easeOut" }
));

Parameters:

  • toProperties (Object) - Target properties (position, rotation, scale, opacity)
  • duration (number) - Duration in seconds
  • options (Object) (optional) - Animation options (timingFunction, delay, etc.)

Returns: EntityAnimation

fromTo()

javascript
EntityAnimation.fromTo(fromProperties: Object, toProperties: Object, duration: number, options?: Object): EntityAnimation

Animate from starting to target properties

Parameters:

  • fromProperties (Object) - Starting properties
  • toProperties (Object) - Target properties
  • duration (number) - Duration in seconds
  • options (Object) (optional) - Animation options

Returns: EntityAnimation

by()

javascript
EntityAnimation.by(byProperties: Object, duration: number, options?: Object): EntityAnimation

Animate by relative values

Parameters:

  • byProperties (Object) - Relative change values
  • duration (number) - Duration in seconds
  • options (Object) (optional) - Animation options

Returns: EntityAnimation

fromBy()

javascript
EntityAnimation.fromBy(fromProperties: Object, byProperties: Object, duration: number, options?: Object): EntityAnimation

Animate from starting properties by relative values

Parameters:

  • fromProperties (Object) - Starting properties
  • byProperties (Object) - Relative change values
  • duration (number) - Duration in seconds
  • options (Object) (optional) - Animation options

Returns: EntityAnimation

spin()

javascript
EntityAnimation.spin(revolutions: number, duration: number, options?: Object): EntityAnimation

Spin animation - rotate around local axis

Parameters:

  • revolutions (number) - Number of full rotations
  • duration (number) - Duration in seconds
  • options (Object) (optional) - Animation options
  • options.axis (Array<number>) (optional) - Local rotation axis [x, y, z]

Returns: EntityAnimation

orbit()

javascript
EntityAnimation.orbit(config: Object, duration: number, options?: Object): EntityAnimation

Orbit animation - rotate around a point

Parameters:

  • config (Object) - Orbit configuration
  • config.axis (Array<number> | Vector3) (optional) - Rotation axis
  • config.rotationCount (number) (optional) - Number of orbits
  • config.clockwise (boolean) (optional) - Spin direction
  • config.orientToPath (boolean) (optional) - Face movement direction
  • config.startTransform (Object) (optional) - Starting offset transform
  • duration (number) - Duration in seconds
  • options (Object) (optional) - Animation options

Returns: EntityAnimation

keyframes()

javascript
EntityAnimation.keyframes(frames: Array<Object>, duration: number, options?: Object): EntityAnimation

Keyframe animation - animate through multiple property states

Parameters:

  • frames (Array<Object>) - Array of property states
  • duration (number) - Total duration in seconds
  • options (Object) (optional) - Animation options
  • options.tweenMode (string) (optional) - "linear" or "hold"

Returns: EntityAnimation

model()

javascript
EntityAnimation.model(name?: string, options?: Object): EntityAnimation

Play embedded model animation (USDZ animations)

Parameters:

  • name (string) (optional) - Animation name (optional, plays default if omitted)
  • options (Object) (optional) - Options
  • options.trimStart (number) (optional) - Trim from start (seconds)
  • options.trimEnd (number) (optional) - Trim from end (seconds)
  • options.duration (number) (optional) - Override duration

Returns: EntityAnimation

group()

javascript
EntityAnimation.group(animations: Array<EntityAnimation>, options?: Object): EntityAnimation

Group multiple animations to play together

Parameters:

  • animations (Array<EntityAnimation>) - Array of EntityAnimation objects
  • options (Object) (optional) - Animation options (applied to group)

Returns: EntityAnimation

emphasize()

javascript
EntityAnimation.emphasize(style: string, duration: number, options?: Object): EntityAnimation

Emphasize animation - attention-grabbing effect

Parameters:

  • style (string) - "bounce", "pulse", "wiggle", etc.
  • duration (number) - Duration in seconds
  • options (Object) (optional) - Animation options

Returns: EntityAnimation