<< All versions

Skill v1.0.0

currentAutomated scan100/100
playcanvas/create-playcanvas/configure-animation
──Details
PublishedSeptember 21, 2026 at 08:35 AM
Content Hashsha256:28450de0d4bc28cc...
Git SHAb632e40e7e01
──Files
Files (1 file, 1.7 KB)
SKILL.md1.7 KBactive
SKILL.md · 36 lines · 1.7 KB

version: "1.0.0" name: configure-animation description: Use before playing, blending, or retargeting GLB animation clips in PlayCanvas, or when diagnosing T-pose, frozen playback, or binding failures.


Animation setup

Get clip and joint names from inspect-glb; never guess them.

  • For one clip, use the surface's simple playback path. For blending, transitions, or events, adapt

an AnimStateGraph from an official animation example with find-examples.

  • Put the anim component on or above the rendered skinned hierarchy, not on a separate pivot.
  • Clamp every 1D blend parameter to its first and last child points. The Engine does not; values

outside the span zero every weight and can make synced speeds non-finite, freezing the pose.

  • Retarget only when each source animationTargets path, minus its .translation, .rotation,

.scale, or .weights suffix, matches a destination nodePaths entry below the model root. Equal joint counts or similar names are not enough.

  • Scale a wrapper, never skinned bones.

Prove playback

An active state or advancing state time does not prove motion. Sample two non-root joints over several rendered frames (inspect-runtime) at idle and at both ends of each blend tree. Zero joint motion means a binding, playback, or blend-weight failure.

Diagnose

  • T-pose: no clip assigned, target paths differ, or the anim component sits outside the rendered

hierarchy.

  • Frozen pose: an unclamped blend input or a non-finite speed.
  • Partial or exploded motion: incompatible rigs.

Read only the reference matching the code: direct Engine, React, or Web Components.

All versions