Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
fandhe-ai avatar

Threejs

  • 1 installs
  • 2 repo stars
  • Updated August 3, 2026
  • fandhe-ai/agent-reference-skills

Reference the Three.js API for 3D web graphics including animation (AnimationAction, AnimationMixer, clips), scenes, and rendering primitives.

About

A structured reference for Three.js covering the 3D graphics API including the animation system (AnimationAction, AnimationMixer, clips) and related primitives. A developer loads it when building WebGL 3D scenes and animations.

  • AnimationAction scheduling via AnimationMixer.clipAction
  • Signature and constructor documentation per class

Threejs by the numbers

  • 1 all-time installs (skills.sh)
  • Ranked #1,366 of 1,879 Documentation skills by installs in the Skillselion catalog
  • Data as of Aug 3, 2026 (Skillselion catalog sync)
npx skills add https://github.com/fandhe-ai/agent-reference-skills --skill threejs

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs1
repo stars2
Last updatedAugust 3, 2026
Repositoryfandhe-ai/agent-reference-skills

What it does

Reference the Three.js API for 3D web graphics including animation (AnimationAction, AnimationMixer, clips), scenes, and rendering primitives.

Files

references/animation/AnimationAction.mdMarkdownGitHub ↗

AnimationAction

Schedules the playback of an AnimationClip on an AnimationMixer. Controls when the clip plays, how it loops, fade behavior, time scaling, and crossfading with other actions.

Signature / Usage

// Do not instantiate directly — use AnimationMixer.clipAction()
const mixer = new THREE.AnimationMixer(mesh);
const action = mixer.clipAction(clip);
action.play();

Constructor

new AnimationAction(mixer, clip, localRoot, blendMode)
ParameterTypeDescription
mixerAnimationMixerThe mixer that controls this action
clipAnimationClipThe animation clip holding keyframes
localRootObject3DRoot object for the action (default: null)
blendModeNormalAnimationBlendMode \AdditiveAnimationBlendMode

Properties

NameTypeDefaultDescription
blendModenumberNormalAnimationBlendModeBlending mode when multiple animations play simultaneously
clampWhenFinishedbooleanfalseIf true, pauses on last frame when finished; if false, disables the action
enabledbooleantrueIf false, the action has no effect
loopLoopRepeat \LoopOnce \LoopPingPong
pausedbooleanfalseWhether playback is paused
repetitionsnumberInfinityNumber of clip repetitions (ignored when loop is LoopOnce)
timenumber0Local time in seconds, clamped/wrapped to [0, clip.duration]
timeScalenumber1Scaling factor for time; 0 pauses, negative plays backwards
weightnumber1Influence weight in range [0, 1] for blending
zeroSlopeAtEndbooleantrueEnables smooth interpolation at clip end
zeroSlopeAtStartbooleantrueEnables smooth interpolation at clip start

Methods

Playback control:

MethodReturnsDescription
play()AnimationActionStarts/resumes playback
stop()AnimationActionStops playback and resets
reset()AnimationActionResets time, paused, enabled, weight, timeScale
halt(duration)AnimationActionDecelerates speed to 0 over given duration

Fading and transitions:

MethodReturnsDescription
fadeIn(duration)AnimationActionFades weight from 0 to 1 over duration
fadeOut(duration)AnimationActionFades weight from 1 to 0 over duration
crossFadeFrom(fadeOutAction, duration, warp)AnimationActionThis action fades in while another fades out
crossFadeTo(fadeInAction, duration, warp)AnimationActionThis action fades out while another fades in
stopFading()AnimationActionStops any active fade
warp(startTimeScale, endTimeScale, duration)AnimationActionGradually changes playback speed
stopWarping()AnimationActionStops scheduled warping

Configuration:

MethodReturnsDescription
setLoop(mode, repetitions)AnimationActionSets loop mode and repetition count
setDuration(duration)AnimationActionSets the duration of a single loop
setEffectiveTimeScale(timeScale)AnimationActionSets effective time scale
setEffectiveWeight(weight)AnimationActionSets effective weight
startAt(time)AnimationActionSchedules when the action should start (global mixer time)
syncWith(action)AnimationActionSynchronizes time and timeScale with another action

State queries:

MethodReturnsDescription
isRunning()booleanTrue if currently playing
isScheduled()booleanTrue if play() has been called
getClip()AnimationClipReturns the associated clip
getMixer()AnimationMixerReturns the controlling mixer
getRoot()Object3DReturns the root object
getEffectiveTimeScale()numberReturns effective time scale
getEffectiveWeight()numberReturns effective weight

Notes

  • Do not use the constructor directly; always obtain actions via AnimationMixer.clipAction().
  • clampWhenFinished only takes effect if loop is set to LoopOnce.
  • Methods returning AnimationAction support method chaining.

Related

  • AnimationMixer
  • AnimationClip

Related skills

Documentationfrontenddocs

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.