unity-animation

Drive Unity 6.3 LTS character animation with Animator Controllers: states, transitions, parameters, blend trees, animation layers, and humanoid Avatar IK. Use when wiring an Animator, setting parameters from script (SetFloat/SetBool/SetTrigger), building blend trees, or when the user mentions Animat

By gamedev-skills · 2,268 installs

npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill unity-animation

Source repository · Upstream listing

Unity Animation (Animator / Mecanim) Control animation state with Unity 6.3 LTS's Animator and Animator Controllers: parameters, transitions, blend trees, layers, and humanoid IK. Targets Unity 6.3 LTS (6000.3) . When to use Use when connecting animation clips into a state machine, driving them from script via parameters, blending locomotion (idle→walk→run), layering an upper body action over movement, or adding foot/hand IK on a humanoid rig. Use when the project has .controller (Animator Controller) and .anim assets, or a rigged model with an Avatar. When not to use: simple non skeletal value tweens (UI fades, position lerps) are better done with a tween/coroutine — see unity csharp scripting . Timeline cutscenes are a separate tool. 2D sprite frame animation also uses the Animator but with sprite keyframes. Core workflow 1. Add an Animator to the model and assign an Animator Controller; for a humanoid model, set its rig to Humanoid so it has an Avatar (enables retargeting and IK). 2. Define parameters on the controller — Float (Speed), Bool (IsGrounded), Int , Trigger (Jump) — and states with transitions whose conditions read those parameters. 3. Set parameters from script , never poke states directly: SetFloat , SetBool , SetInteger , SetTrigger . The state machine resolves transitions for you. 4. Blend continuous motion with a Blend Tree (one Float like Speed drives idle↔walk↔run) instead of many discrete states + transitions. 5. Layer additive/override motion (e.g. an upper body "aim" layer with an Avatar Mask) and control its layerWeight . 6. Verify in the Animator window during Play mode — the live state highlights and parameter values update, so you can see exactly which transition fired (or didn't). Patterns 1. Drive locomotion + a one shot action from script 2. Smooth a noisy input into a blend parameter 3. Play / cross fade a state directly (bypassing parameter conditions) 4. Wait until the current state finishes Pitfalls SetTrigger missed or "sticks" — triggers are consumed by the next satisfied transition and auto reset; if no transition consumes it, it can fire later unexpectedly. Use ResetTrigger to clear, or prefer a Bool when the condition is a sustained state. String parameter typos fail silently — a misspelled name just does nothing. Use Animator.StringToHash and cache the int hashes. Transition feels laggy — Has Exit Time makes the transition wait for the clip to reach a normalized time. Uncheck it for responsive, condition driven transitions (jump, hit). Character slides or won't move — Apply Root Motion is on but your code also moves the transform (or vice versa). Decide: root motion or scripted movement, not both. Upper body layer overrides the whole body — set the layer's Blend mode (Override vs Additive), assign an Avatar Mask, and tune layerWeight (0–1). A cross fade is much slower or faster than expected — CrossFade 's duration is normalized to the state's length. Use CrossFadeInFixedTime to give the duration in seconds. IK does nothing — IK only applies inside OnAnimatorIK , requires "IK Pass" enabled on the layer, and needs a Humanoid Avatar. References For blend trees (1D vs 2D Freeform/Directional), animation layers + Avatar Masks , and humanoid IK ( OnAnimatorIK , SetIKPositionWeight , SetIKPosition , look at), read references/blend trees and ik.md . Primary docs: Unity Manual "Animation" section and ScriptReference/Animator . Related skills unity csharp scripting — the MonoBehaviour and coroutine timing used above. unity physics — moving the body that the animation visualises. game ai — deciding when to play which animation state.