Communitygithub.com

mediastorm-motion-graphics

CapCutパラメータアニメーション、イージング、ポイントトラッキングラベル、フレームグリッド数字フラッシュ、タイマー、情報パッケージを設計します。平面透かし置換、キーイング、ストーリー構成ではなく、情報を伝えたり注意を誘導するモーションに使用します。

mediastorm-motion-graphics とは?

このスキルは、CapCutにおけるモーショングラフィックスデザインを専門的に扱い、情報を明確に伝え、視聴者の注意を誘導し、安定したフレームグリッド上で変化を定着させることを目的としています。具体的には、スケール/位置のキーフレームとイージングを用いたパラメータアニメーション、不要なスケールやパースペクティブを継承せずに移動する特徴点に追従するポイントトラッキングラベル、フレームグリッド上で高速かつ可読性の高い数字フラッシュ、そしてマスク、ストローク、シャドウ、エントランス/イグジットアニメーションを含むタイマー/パッケージ要素の構築の4つの主要なジョブをカバーします。このスキルは、CapCutのネイティブ機能だけでなく、最終的なモーションデザインをRemotionやTypeScriptで実装するためのアダプターガイドも提供します。ワークフローは、アクション時間の明確化、キーフレームのセグメントローカルな扱い、イージングの一貫した適用、トラッキングラベルの次元制御、フレームグリッド計算、そして実際のプレイヤーでの検証を重視しており、装飾的なモーションと情報を伝えるモーションを区別し、後者のみを採用することを推奨します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Ariakage/mediastorm-capcut-skill/tree/main/skills/mediastorm-motion-graphics

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

MediaStorm モーション グラフィックス

モーションを使用して情報を明確にし、注意を誘導し、安定したフレームグリッド上に変更を定着させます。このスキルは、パラメータアニメーション、ポイントトラッキングラベル、数字フラッシュ、タイマー/パッケージ構築という、関連性はあるものの異なる4つのジョブをカバーします。

使用するタイミング

  • プッシュイン、パン、またはコンポジションの変更に、スケール/位置のキーフレームとイージングが必要な場合。
  • ラベルが、移動するフィーチャーに追従する必要があるが、不要なスケールやパースペクティブを継承してはならない場合。
  • 数字、価格、カウンター、タイマーがすばやく変化し、読み取り可能な状態を維持する必要がある場合。
  • パッケージング要素に、エントランス/イグジットアニメーション、マスクウィンドウ、またはプリセットが必要な場合。
  • モーションデザインをRemotionに引き渡すか、TypeScriptで実装する必要がある場合。

平面トラッキング(mediastorm-compositing-tracking にルーティング)、キーイング/マスク、カラーグレーディング、ストーリー順序にはこのスキルを使用しないでください。

確立する入力

  • 情報的役割:視聴者は何に気づき、読み取り、理解すべきか?
  • 開始/終了コンポジション、正確なアクション時間、およびプロジェクトのフレームレート。
  • ターゲット:セグメントローカルパラメータ、トラッキングラベル、数字フラッシュ、またはタイマー。
  • モーションが装飾的であるか、意味を持つか。装飾的な場合、その理由。
  • 出力フレームレート、および最終的なモーションが通常速度で評価されるかどうか。

ワークフロー

  1. キーフレームを追加する前に、目的と正確なアクション時間を定義します。プッシュインには、「大きくする」だけでなく、ターゲットとなるコンポジションが必要です。
  2. キーフレーム値はセグメントローカルとして扱います。メディアの分割または置換により、共有されているように見えたパラメータがリセットされる可能性があります [コース証拠][08 01:00–02:40]。
  3. プッシュインの場合、スケールと位置を意図的に組み合わせます。コースのモバイルプッシュの例では、終了時はスケール 286%、位置 X 0、Y -2219 で、開始時はスケール 100%、位置 0/0 です。354% や 214% という値はドラッグ中の中間値であり、最終的なプリセットではありません [サンプル静止画][08 05:58.5 / 06:22.5]。
  4. キーフレームスピードカーブパネルを開き、スケール、位置 X、位置 Y の 3 つのカーブすべてを検査します。パネルの範囲は、スケール 4.00–0.00、X 768–-768、Y 432–-2160 で、デフォルトはリニアです [サンプル静止画][08 07:59.0 / 08:20.5]。
  5. イージングを一貫して適用します。コースのプリセットリストは 无 / 缓入 / 二次方缓入 / 三次方缓入 / 缓出 / 二次方缓出 / 三次方缓出 / 缓动 / 二次方缓动 / 三次方缓动 / 回弹展开 / 线性 (なし / イーズイン / 二次イーズイン / 三次イーズイン / イーズアウト / 二次イーズアウト / 三次イーズアウト / イーズインアウト / 二次イーズインアウト / 三次イーズインアウト / バウンスアウト / リニア) です。デモでは3つのカーブすべてに二次イーズインを選択しています [サンプル静止画][08 09:18.5]。
  6. ポイントトラッキングラベルの場合は、安定した高コントラストの、フレーム内に残るフィーチャーを選択します。ラベルが継承するディメンションのみを有効にします。コースでは 08:26 で 缩放/距离(スケール/距離)をオフにして、テキストが位置のみに追従するようにしています [サンプル静止画][12 08:24–08:26]。
  7. トラッキング前に未使用のフッテージをトリミングします。クリップ全体をトラッキングすると計算が無駄になり、ラベルの制御が難しくなります [コース証拠][12 09:19–10:57]。
  8. 数字フラッシュの場合は、フレームグリッド上に短いテキストセグメントを構築します。コースのデザインユニットは約 2 フレーム/セグメントですが、完成したフレームグリッドでは、最初の実行で 8 つの値/15 フレーム(約 0.50 秒)、2 回目の実行で 6 つの値/11 フレーム(約 0.37 秒)が表示され、各値は 1〜3 フレーム保持されています [サンプル静止画][12 12:48–14:35]。文字通り「2 フレーム」を繰り返さず、完成したグリッドを確認してください。
  9. タイマー/パッケージの場合は、構造を明示的に構築します。黒画面ソース、長方形マスク、角の半径、ストローク、シャドウ、不透明度、繰り返し背景ブロック、テキスト数字、シャドウ、エントランスアニメーション、オフセットラダー。コースのタイマーは、538×540 のマスク、半径 27、白ストローク 2、シャドウ 100/19/0/0、画像不透明度 45%、テキストサイズ 15、テキストスケール 134%、テキストシャドウ 45/16/0/0 を使用しています [サンプル静止画][15 16:30–19:47]。
  10. エントランスアニメーションとイグジットアニメーションを、一貫したスタイル、位置、およびパッケージにメリットがある場合にのみわずかなオーバーラップでペアにします。コースでは、パネル設定で約 0.4 秒 の上方向のイグジット/エントランスをペアにしており、プレビューでの可視オーバーラップは約 5 フレーム(約 0.17 秒)です [サンプル静止画][12 14:35–17:29]。
  11. 隠蔽、セーフエリア、可読性、隣接するアニメーション、およびトランジションやオーバーレイがテストターゲットを不純にしていないかを確認します。
  12. 実際のプレーヤーで通常速度で検証します。静止画では、イージングの感触、数字の可読性、トラッキングの安定性を証明できません。

決定ルール

  • モーションに情報的役割がない場合は、削除します。「ダイナミックに見える」は役割ではありません。
  • スケールと位置が一緒にアニメーションされる場合は、開始/終了時間を揃え、両方のカーブを確認します。リニアな位置移動の横でスケールのみイージングすると、2 つのイベントとして読み取られます。
  • キーフレームマーカーがセグメント上で塗りつぶされて見えても、パラメータ行を検査します。コースの 06:22.5 のビューでは、スケールのひし形が白抜きで、位置のひし形が塗りつぶされており、これは確認すべき競合であり、プリセットではありません [確認待ち]。
  • トラッキングラベルの場合、位置のみがデフォルトです。ラベルが奥行きを継承する必要がある場合にのみ、スケール/距離を追加します。
  • 数字フラッシュの場合は、整数フレーム計算を使用し、最終的な値を読み取れる十分な長さ保持します。
  • タイマー/パッケージがプリセットを使用する場合は、プリセットとプロジェクトのフレームレートを記録します。別のサイズで保存されたプリセットは適合しない可能性があります。
  • モーションエフェクトがプロキシプレビューでのみ表示される場合は、承認しないでください。インターフェース/エクスポートを確認します。

CapCut 実行ノート

  • capcut keyframe は、バッチおよび linear/ease-in/ease-out/ease-in-out/hold をサポートしています。イージングには同じプロパティの隣接するキーフレームが必要であり、ホールドには後続のキーフレームが必要です。
  • アルファキーフレームは、以前に確認された macOS パスでは信頼性の高いフェードメカニズムではありません。適切な場合は、アニメーションマテリアルまたは image-anim を使用します。
  • add-text、image-anim、text-anim には CLI 契約がありますが、視覚的な結果は依然として CapCut の受け入れが必要です。
  • トラッキングラベルの場合、コースではテキスト/トラッキングパネルを使用します。CLI キーフレームが CapCut トラッキングソルバーと同等であると想定しないでください。

Remotion / TypeScript アダプター

  • interpolate + Easing.bezier/Easing.spring で値を駆動し、useCurrentFrame() と useVideoConfig().fps を読み取ります。
  • 矩形/円/星には @remotion/shapes、テキストの測定/フィットには @remotion/layout-utils、ブラーには @remotion/motion-blur を使用します。
  • 数字フラッシュ: Math.floor(frame / framesPerValue) から現在の値を導出し、フレームグリッド上で最終値を保持します。
  • Remotion にはポイントトラッキングパネルはありません。トラッキングされた座標を外部データからトランスフォームにフィードします。

失敗条件

  • アクション時間が不明で、キーフレームが感覚で配置されている。
  • スケールと位置のカーブが一致していない。
  • トラッキングラベルが意図せずスケールやパースペクティブを継承している。
  • 数字フラッシュがミリ秒で設計され、編集上でドリフトする。
  • 最終的な値が読み取れるほど長く保持されない。
  • タイマーパッケージがサイズ/フレームレートを確認せずにプリセットから構築されている。
  • モーションが静止画またはプロキシプレビューから承認される。

受け入れチェックリスト

  • モーションには、明確に述べられた情報的役割がある。
  • 開始/終了コンポジションとアクション時間が記録されている。
  • スケール/位置のカーブが揃えられ、イージングが一貫して適用されている。
  • トラッキングラベルは、意図されたディメンションのみを使用している。
  • 数字フラッシュがフレームグリッド上にあり、最終値が保持されている。
  • タイマー/パッケージのジオメトリとテキストがターゲットサイズで確認されている。
  • 隠蔽、セーフエリア、隣接するアニメーションが確認されている。
  • 結果が CapCut/エクスポートで通常速度で視聴されている。

出力契約

以下を返すこと:モーションジョブ、正確なキーフレームタイミング、パラメータ値、イージングの選択、トラッキングディメンション、フレームグリッド計算、および確認済み vs 未確認の内容。コースのプリセットを普遍的なデフォルトとして提示しないこと。

コース由来のパターン、失敗チェック、タイムコードについては、references/motion-design.md を参照してください。

関連スキル