Skip to content
cccskills
FreePublished on GitHub

animation-principles

ディズニーの12原則とジブリ的自然運動をベースに、UIアニメーションの「なぜ動かすか」「どう動かすか」を判断する。アニメーション/モーション/トランジション設計の相談で、ツール非依存の概念的判断軸として使う。

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md9.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Animation Principles Skill

参照

発火条件

  • アニメーション/モーション/トランジションの設計・レビューで「なぜこの動きなのか」の判断が必要な場合に適用する。
  • 特定ツール(GSAP/CSS/Framer Motion等)に依存しない、概念的な判断軸として使う。
  • creative-coder スキルと併用されることが多い(本スキルが「原則」、creative-coderが「実装制約」を担当)。

このSkillの基本方針

  • 原則: アニメーションは「情報を伝える手段」であり、装飾ではない。
  • 判断基準: 「この動きを取り除いても情報は伝わるか?」→ Yesなら装飾的、Noなら機能的。
  • 自然さ: 物理法則(重力/慣性/摩擦)に基づく動きが人間にとって自然に感じる。
  • 余白: ジブリ的「間(ま)」— 動きの前後にタメと余韻を持たせる。
  • アクセシビリティ: prefers-reduced-motion を常に尊重する(WCAG 2.1 SC 2.3.3)。
  • 静止の焦点アンカー: 動く要素だけを焦点にしない。静止した焦点物で視線を固定し、動きは周縁に落とす(酔い防止。「動かすなら、留まれる場所も用意する」)。

設計着手時の基本姿勢:アニメーション前提で設計する(motion-first)

「最初からアニメーションありきで設計する」ための着手姿勢。動きを“後から足す装飾”にせず、設計の初手から第一級の入力として扱う。

  • なぜ: 静的な見た目を先に固めてから動きを「足す」と、動きは装飾になりやすく、情報伝達・レイアウト・状態と一体化しない。最初から「どう現れ、どう反応し、どう消えるか」を前提に組むと、レイアウト・状態・余白が動きを受け止める形で設計され、結果が自然で「生きている」感覚になる。
  • どう効かせるか:
    • 静的モック/UI骨格を起こす段階で、各要素に**「登場・反応・退場」を1行で添える**(「動きは後で」にしない)。
    • 状態(hover/active/focus/loading/empty/error)は静止画の集合ではなく、状態“間”の遷移込みで見た目と同時に設計する。
    • 物理を先に言語化してからイージングを選ぶ: 「ここで何が物理的に起きるか(落ちる/弾む/慣性/タメと余韻)」→ そのあとに duration/easing へ翻訳する(数値・イージング名から入らない)。
    • reduced-motion 代替もこの段階で同時に決める(後手にしない。prefers-reduced-motion は常に尊重)。
  • 誤解しないこと(motion-first ≠ 動きを増やす): 「最初から考える」と「たくさん動かす」は別物。下記の「重要な瞬間だけ動かす(メリハリ)」原則は維持する。

デザインシステムのモーション原則

Material Design の3原則

  • Informative(情報的): 要素間の関係、アクションの可用性、結果を動きで明確化する。
  • Focused(集中的): 本質的な情報を示し、不要な気晴らしを避ける。動きは注意を導くもの。
  • Expressive(表現的): ユーザージャーニーの瞬間を祝福し、ブランドスタイルを表現する。

Apple HIG のモーション原則

  • 意図的なアニメーション: ユーザーをオリエンテーションし、フィードバックを提供し、学習を支援する。
  • 頻繁な操作に不要な動きを追加しない: 標準UIは既に微細なアニメーションを持つ。
  • 一貫性: カスタムアニメーションはiOS/macOSのビルトインアニメーションと同等であるべき。

12原則のUI適用ガイド

1. Squash & Stretch(つぶしと伸ばし)

  • UI適用: ボタンのタップフィードバック、モーダルの出現/消失でスケール変化を付ける。
  • 注意: 過度な変形は不自然。微細(5-10%)で十分。

2. Anticipation(予備動作)

  • UI適用: アクション前の小さな引き(ボタンが微妙に沈む → 確定動作)。
  • 目的: ユーザーに「何かが起こる」と予告する。

3. Staging(演出)

  • UI適用: 重要な要素を目立たせ、他を抑える。フォーカス管理、視線誘導。
  • 目的: 一度に伝える情報を1つに絞る。

4. Straight Ahead / Pose to Pose(逐次描き / 原画間)

  • UI適用: 逐次 = パーティクル等のリアルタイム生成。原画間 = キーフレームベースのトランジション。
  • 判断: 制御が必要ならPose to Pose、偶然性が欲しいならStraight Ahead。

5. Follow Through / Overlapping Action(残し / 重なり)

  • UI適用: メニュー展開時に各項目が少しずつ遅れて追従する(stagger)。
  • 目的: 動きに有機的なリズムを作る。

6. Slow In / Slow Out(緩急)

  • UI適用: イージング。等速(linear)は機械的。ease-out(減速)が自然な終わり方。
  • 原則: 開始と終了を緩やかに、中間を速くする。

7. Arc(弧を描く動き)

  • UI適用: 直線移動より弧を描く方が自然。ドラッグ&ドロップ、画面遷移のパス。
  • 注意: UIでは微妙な弧で十分。過度な曲線は違和感。

8. Secondary Action(副次動作)

  • UI適用: メインアクション(モーダル出現)に添える微細な効果(背景のブラー変化)。
  • 原則: 副次はメインを補強する。目立ちすぎてはいけない。

9. Timing(タイミング)

  • UI適用: duration(持続時間)の選択。短すぎると見えない、長すぎるとストレス。
  • 目安: マイクロインタラクション 100-200ms、画面遷移 200-500ms、アテンション 300-700ms。

10. Exaggeration(誇張)

  • UI適用: 重要な状態変化を強調する(エラー時の振動、成功時の弾み)。
  • 注意: UIでの誇張は控えめに。10-20%の「ちょっと大げさ」が心地よい。

11. Solid Drawing(立体的表現)

  • UI適用: シャドウ、奥行き、Z軸の意識。Material Designの「高さ(elevation)」に相当。
  • 目的: 空間関係を明示する。

12. Appeal(魅力)

  • UI適用: ブランドトーンに合った「らしさ」。遊び心のある微細なモーション。
  • 原則: 機能を犠牲にしない範囲でキャラクターを出す。

ジブリ的アニメーションアプローチ

  • 重力表現: 物が落ちる時の加速、跳ねる時の減速を物理的に正しく。
  • 自然な動き: 風に揺れる、水が流れるなど、環境要因による微細な動き。
  • 間(ま): 動きの前後に「タメ」と「余韻」を持たせる。即座に始まり即座に終わる動きは機械的。
  • 「生きている」感覚: 静止状態でも微細な揺れや呼吸を入れる(idle animation)。

出力フォーマット(必ずこの順)

  1. 推奨方針(1〜3行)
  2. 適用する原則(12原則のどれか + ジブリ的要素があれば)
  3. 理由(なぜこの動きが必要か / 情報伝達における役割)
  4. 設計案(duration / easing / stagger / 副次動作)
  5. アクセシビリティ(reduced-motion時の代替)
  6. 落とし穴(避けるべき)

チェックリスト

  • 設計の初手で「登場・反応・退場」と状態遷移を言語化したか(後付けの装飾になっていないか/motion-first)
  • この動きは「情報伝達」に寄与しているか(装飾的なだけではないか)
  • durationは適切か(マイクロ: 100-200ms、遷移: 200-500ms)
  • イージングはlinear以外を選んでいるか(ease-outが自然な終わり方)
  • prefers-reduced-motion で代替表現(dissolve/highlight fade/色変化等)を提供しているか(WCAG 2.3.3)
  • アニメーションの目的を1文で説明できるか(Informative/Focused/Expressiveのどれか)
  • 誇張の度合いは適切か(UIでは控えめが原則)

よくある落とし穴

  • 装飾的アニメーションの過剰(動きが多すぎてユーザーが疲れる)
  • duration選択のミス(速すぎて認識できない / 遅すぎてストレス)
  • linear easingの多用(機械的で不自然に感じる)
  • prefers-reduced-motion の無視(前庭障害を持つユーザーに苦痛を与える)
  • 原則の過剰適用(12原則すべてを1つのUIに詰め込む必要はない)
  • ジブリ的「間」の過剰(ウェブUIでは長い余韻はストレスになりうる)
  • ブランドトーンとの不一致(遊び心がフォーマルなアプリに合わない等)

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

セマンティックHTML/JSXとWAI-ARIAを「最小で正しく」適用し、キーボード操作・スクリーンリーダ・コントラスト等を満たす実装を作るための判断軸。ネイティブ要素優先、ARIAの過剰使用を避ける。

The English summary is being prepared. Showing the original description.

mae616/ai-template9Updated Oct 6, 2026

Agent Browser(Headlessブラウザ自動化CLI)を使ったUI検証・E2Eテスト・スクリーンショット取得の判断軸。アクセシビリティツリーベースの要素選択を優先し、壊れにくいテスト設計を目指す。

The English summary is being prepared. Showing the original description.

mae616/ai-template9Updated Oct 6, 2026

アーキテクチャ設計(境界/依存/データフロー/非機能/運用)を、制約とトレードオフで言語化し、ADR-liteで合意形成しながら段階的に形にする。doc/input/rdd.md にアーキテクチャ/非機能/運用の要求がある、または設計判断(分割/責務/インタフェース/データ整合/観測性/スケール)相談で使う。

The English summary is being prepared. Showing the original description.

mae616/ai-template9Updated Oct 6, 2026

事業仮説を支える一次/二次情報を整理し、意思決定に足る「根拠」「不確実性」「次の調査」を可視化する。でたらめな引用や推測の断言を避け、出典の実在を重視する。

The English summary is being prepared. Showing the original description.

mae616/ai-template9Updated Oct 6, 2026

体験品質(動き/触感/視線誘導)を「実装可能な制約」に落とし、アクセシビリティとパフォーマンスを犠牲にせずに表現を実現する。UIの表現・アニメーション・インタラクション設計/実装の相談で使う。

The English summary is being prepared. Showing the original description.

mae616/ai-template9Updated Oct 6, 2026

設計と実装を「最小で正確」に進め、差分思考で品質と速度を両立する。設計の溶け込み(責務不明/重複/暫定対応)を防ぎ、レビュー可能な変更へ落とし込むときに使う。

The English summary is being prepared. Showing the original description.

mae616/ai-template9Updated Oct 6, 2026

See all skills by mae616

Report a problem with this skill