Disney Animation Rule Skill

vibe-motion/skills/disney-animation-rule-skill

作者 vibe-motion4c86c0d016a3ba22ee673428a494f3c44f84111f無授權條款收錄於 2026年10月9日更新於 2026年10月9日

Apply Disney's 12 principles as practical design and engineering rules for procedural animation. Use when creating, improving, reviewing, or debugging code-driven motion in web, SVG, canvas, React, Remotion, game, UI, character, camera, or 3D scenes; especially when motion feels stiff, weightless, mechanical, unclear, or physically correct but visually weak.

AI 產生的概覽

將迪士尼 12 條動畫原則作為實用規則,用來設計、審查與除錯由程式碼驅動的程序化動畫。

功能
引導代理設計與審查程序化動畫,把物理模擬與插值視為輸入,而非最終結果。它定義了工作流程:分塊動作階段、建立運動階層、實作確定性的狀態求值、依感知調整時間與間距,並執行審查清單。它也列出應避免的常見預設做法,例如對所有屬性使用同一個線性進度值,或在未確定力與支點的情況下加入通用彈跳。交付物是改善後的運動設計與審查指引,而不是產生的檔案。
適用情境
適用於建立、改善、審查或除錯 web、SVG、canvas、React、Remotion、遊戲、UI、角色、攝影機或 3D 場景中由程式碼驅動的運動。尤其適用於運動顯得僵硬、失重、機械、不清楚,或物理上正確但視覺上薄弱的情況。它並不要求每個鏡頭都套用全部 12 條原則;應選擇能解決感知問題的最小原則集合。
執行需求
不需要指令碼或套件,僅為說明性內容。它引用三個隨附的 markdown 檔案(references/twelve-principles.md、references/implementation-patterns.md、references/clawd-jump-case-study.md)。它假定可以存取正在審查的動畫程式碼與渲染器,例如 web、SVG、canvas、React、Remotion、遊戲、UI 或 3D 場景。

Disney Animation Rules for Procedural Animation

Design motion for readable intent, weight, rhythm, and personality. Treat physical simulation and interpolation as inputs, not as the final animation.

Do not force all 12 principles into every shot. Select the smallest set that fixes the perceptual problem.

Workflow

  1. Inspect the scene, code, inputs, renderer, and project constraints before changing motion.
  2. State the action in one sentence: subject, intention, force, destination, and desired feeling.
  3. Identify the primary action and rank all secondary actions beneath it.
  4. Block semantic phases and event poses before selecting easing curves.
  5. Select relevant principles from references/twelve-principles.md.
  6. Define one deterministic state evaluator from frame or time plus explicit inputs.
  7. Derive deformation, overlap, accents, and effects from primary motion or semantic events.
  8. Tune timing and spacing at representative frames, then review the full motion.
  9. Remove effects that hide weak posing, unclear timing, broken contacts, or poor silhouettes.

For detailed engineering patterns, read references/implementation-patterns.md. For the motivating jump comparison, read references/clawd-jump-case-study.md.

Block the Action

Define event poses such as:

  • Rest or setup
  • Anticipation
  • Commitment or launch
  • Passing pose
  • Apex, hold, or decision point
  • Contact or impact
  • Overshoot
  • Settle or recovery

Adapt the vocabulary to the action. A button press may use rest, press, contact, overshoot, and settle. A camera move may use establish, accelerate, reveal, brake, and settle.

For each phase, specify:

  • Duration or duration ratio
  • Position and path
  • Velocity at each boundary
  • Scale, rotation, and pivot
  • Contact constraints
  • Silhouette or readability goal
  • Secondary-action lag
  • Optional accent such as smear, blink, particles, or camera shake

Prefer a phase table or explicit constants over one opaque easing expression.

Build the Motion Hierarchy

Build in this order:

  1. Preserve functional constraints, contacts, bounds, and input behavior.
  2. Make the primary path and timing readable with the subject rendered as a simple shape.
  3. Add pose changes and deformation around force and contact events.
  4. Add follow-through and overlap with controlled phase offsets.
  5. Add secondary action that reinforces, never competes with, the main action.
  6. Add accents only where speed, impact, or clarity justify them.

Make the primary motion work without motion blur, particles, trails, or sound.

Engineer Deterministically

  • Compute animation state as state = f(frameOrTime, inputs, parameters).
  • Keep evaluation independent of previous renders and render order.
  • Preserve fractional frames through interpolation and derivative calculations.
  • Seed procedural variation from stable identifiers; never use unseeded randomness during rendering.
  • Derive velocity and acceleration analytically or by sampling the pure state function.
  • Snapshot interactive inputs at an intentional commitment event when later changes would break the action.
  • Keep contact anchors fixed during squash, stretch, recoil, or settle unless sliding is intentional.
  • Preserve position and velocity continuity across phase boundaries unless a deliberate hit, cut, or snap requires discontinuity.
  • Normalize thresholds and amplitudes by subject size, travel distance, viewport, or scene scale.
  • Clamp exaggeration to protect legibility, geometry, and interaction constraints.

For Remotion, make every frame independently calculable because frames may render in parallel and out of order. For browser-based 3D work in environments that prohibit Remotion for 3D, use the project's Puppeteer capture workflow.

Tune by Perception

Judge spacing, not just curves:

  • More distance between samples reads as more speed.
  • A short preparation followed by a large spacing change reads as force.
  • Closely spaced samples near an apex or decision point create emphasis.
  • Fast contact followed by compression and recovery creates weight.
  • Delayed extremities create flexibility and momentum.
  • A clean silhouette creates clarity before detail does.

Use asymmetry deliberately. Equal ascent and descent, identical easing on every channel, and synchronized body parts often read as mechanical.

Review Checklist

  • Read the action correctly from a few still frames.
  • Confirm anticipation points in the direction of the coming action.
  • Confirm the path, orientation, and deformation agree with velocity and force.
  • Confirm impact intensity responds to incoming speed or force.
  • Confirm secondary action starts later and settles later than the primary action.
  • Confirm holds are intentional and do not freeze every channel.
  • Confirm responsive layouts preserve the same action logic at different scales and endpoints.
  • Confirm no effect compensates for a weak pose or broken transition.
  • Confirm each rendered frame is deterministic for identical inputs.

Avoid These Defaults

  • Do not use one linear progress value for every property.
  • Do not assume a symmetric parabola automatically creates a convincing jump.
  • Do not add generic bounce or elastic easing without identifying the force and pivot.
  • Do not apply squash and stretch continuously; concentrate it around acceleration and contact.
  • Do not let secondary motion lead the primary action.
  • Do not preserve physical realism at the cost of readability.
  • Do not exaggerate every channel at once.
  • Do not introduce stateful frame-to-frame simulation into an out-of-order renderer.

來源與署名

來源:vibe-motion/skills位於disney-animation-rule-skill提交4c86c0d

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架