Skip to content

Animator

Supported Class Animation & Avatar

Responsible for the playback and replication of Animations.

Note: Animator and AnimationTrack work for keyframe animations; skeletal skinning is a separate gap.

1 Nova members · 19 modern Roblox members not implemented yet

Description

Animator is the main class responsible for the playback and replication of Animations. All replication of playing AnimationTracks is handled through the Animator instance.

See Animation in Roblox to learn how to create and add pre-built or custom animations to your game.

Inheritance

Object → Instance → Animator

Nova inheritance: Instance → Animator

Methods

LoadAnimation Supported Function Loads an Animation onto an Animator, returning an AnimationTrack.
Animator:LoadAnimation(Instance animation): Instance

Loads an Animation onto an Animator, returning an AnimationTrack.

This method loads the given Animation onto this Animator, returning a playable AnimationTrack. When called on an Animator within models that the client has network ownership of, for example the local player's character or from BasePart.SetNetworkOwner(), this method also loads the animation for the server as well.

Note that the Animator must be in the Workspace before making a call to LoadAnimation() or else it will be unable to retrieve the AnimationClipProvider service and throw an error.

Warning

Do not use LoadAnimation() in an attempt to retrieve an existing track. Calling LoadAnimation() always creates a new AnimationTrack instance which may impact game performance if overused. Instead, use GetTrackByAnimationId() when you need to look up a track that was already loaded.

Loading an Animation on Client or Server

In order for AnimationTracks to replicate correctly, it's important to know when they should be loaded on the client or on the server:

  • If an Animator is a descendant of a Humanoid or AnimationController in a player's Player.Character, animations started on that player's client will be replicated to the server and other clients.

  • If the Animator is not a descendant of a player character, its animations must be loaded and started on the server to replicate.

The Animator object must be initially created on the server and replicated to clients for animation replication to work at all. If an Animator is created locally, then AnimationTracks loaded with that Animator will not replicate.

Roblox reference signature
Animator:LoadAnimation(animation: Animation): AnimationTrack

Roblox documentation

Inherited members

Inherited from Instance: 8 properties, 36 methods, 7 events. They are documented on the base class page.

19 modern Roblox member(s) are not implemented yet — expand to inspect

Members declared by Roblox's Animator class (or by a missing base class) that Nova does not expose. Use this list to scope a migration; the compatibility guide has the recommended workaround.

Properties

Member Signature Status Notes Flags
EvaluationThrottled EvaluationThrottled: bool Not yet Indicates whether animation evaluation was throttled (skipped) this frame for this Animator. ReadOnly, NotReplicated
PreferLodEnabled PreferLodEnabled: bool Not yet Controls whether animation LOD throttling is allowed for this Animator. When set to false, animations always evaluate at full fidelity. —
RootMotion RootMotion: CFrame Not yet — ReadOnly, NotReplicated, NotBrowsable
RootMotionWeight RootMotionWeight: float Not yet — ReadOnly, NotReplicated, NotBrowsable

Methods

Member Signature Status Notes Flags
ApplyJointVelocities Animator:ApplyJointVelocities(motors: Variant): null Not yet Computes relative velocities between parts and applies them to Motor6D.Part1. —
GetPlayingAnimationTracks Animator:GetPlayingAnimationTracks(): Array Not yet Returns the list of currently active AnimationTracks. —
GetPlayingAnimationTracksCoreScript Animator:GetPlayingAnimationTracksCoreScript(): Array Not yet — RobloxScriptSecurity
GetTrackByAnimationId Animator:GetTrackByAnimationId(animationId: ContentId): AnimationTrack Not yet Returns an existing AnimationTrack on this Animator that was loaded from an Animation with the given animation ID. Un… —
LoadAnimationCoreScript Animator:LoadAnimationCoreScript(animation: Animation): AnimationTrack Not yet — RobloxScriptSecurity
LoadStreamAnimation Animator:LoadStreamAnimation(animation: TrackerStreamAnimation): AnimationStreamTrack Not yet — RobloxScriptSecurity
LoadStreamAnimationForSelfieView_deprecated Animator:LoadStreamAnimationForSelfieView_deprecated(animation: TrackerStreamAnimation, player: Player): AnimationStreamTrack Not yet — RobloxScriptSecurity
LoadStreamAnimationV2 Animator:LoadStreamAnimationV2(animation: TrackerStreamAnimation, player: Player = nil, shouldLookupPlayer: bool = true, shouldReplicate: bool = true): AnimationStreamTrack Not yet — RobloxScriptSecurity
RegisterEvaluationParallelCallback Animator:RegisterEvaluationParallelCallback(callback: Function): null Not yet — —
StepAnimations Animator:StepAnimations(deltaTime: float): null Not yet Increments the AnimationTrack.TimePosition of all playing AnimationTracks that are loaded onto the Animator, app… PluginSecurity
StepAnimationsInternal Animator:StepAnimationsInternal(deltaTime: float, options: Dictionary): null Not yet — RobloxScriptSecurity
SynchronizeWith Animator:SynchronizeWith(otherAnimator: Animator): null Not yet — RobloxScriptSecurity

Events

Member Signature Status Notes Flags
AnimationPlayed AnimationPlayed(animationTrack: AnimationTrack) Not yet Fires when the Animator starts playing an AnimationTrack. —
AnimationPlayedCoreScript AnimationPlayedCoreScript(animationTrack: AnimationTrack) Not yet — RobloxScriptSecurity
AnimationStreamTrackPlayed AnimationStreamTrackPlayed(animationTrack: AnimationStreamTrack) Not yet — RobloxScriptSecurity

Roblox reference: Animator

Generated from Nova's API dump and Roblox creator-docs. Nova-only members come from the engine's reflection metadata.