muapi-ai-fight-scene について
muapi-ai-fight-sceneは、キャラクターと環境の画像、16コマのストーリーボード、画像から動画への生成を組み合わせる、LLMが進行するスキルです。ショットごとの視覚的な参照を使ってアクションを構成し、キャラクターの一貫性を確認できます。
主な機能
- 01キャラクター参照シートの生成
- 02環境コンセプト画像の生成
- 034×4の16コマストーリーボード作成
- 04ストーリーボードに沿った動画生成
- 05キャラクターと各コマの確認手順
活用シーン
- 01映画風の格闘シーン制作
- 02複数ショットのアクション構成
- 03ストーリーボードから格闘動画を生成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ samuraigpt/ generative-media-skills --skill muapi-ai-fight-sceneインストール後、Claude Code で/muapi-ai-fight-sceneを入力して読み込まれたか確認します。
詳細
AI 戦闘シーン生成器
まず16コマのストーリーボード画像を作成し、それを基にSeedance 2.0の画像から動画生成を行って、カット密度の高いアクション/戦闘シーンを生成します。
核となる考え方は、アクションの緊張感は、単一ショットの品質ではなくカット密度から生まれるということです。動画モデルにあらかじめ描いた4×4のストーリーボードグリッドを忠実にたどらせることで、15秒のクリップに16種類のショットを盛り込めます。パンチを繰り出す瞬間、逆アングル、ECU、ウィップパンなど、t2vプロンプトだけでは演出できないショットを実現します。
入力
| 名前 | 型 | 必須 | デフォルト | 説明 |
|---|---|---|---|---|
character_description | テキスト | はい | — | 戦闘者の身体的特徴を詳しく記述します。目の色、傷のある側、左腰のホルスターなどの左右非対称な特徴は、コマをまたいで同一性を維持するのに役立ちます。 |
environment_description | テキスト | はい | — | シーンの舞台設定です。例:「サイバーパンク風の、雨で濡れた裏路地。ネオンの漢字看板、Strayゲームのような美学、クロームに降る雨。」 |
action_script | テキスト | はい | — | アクションの流れです。文章または番号付きの動きで記述します。例:「主人公が追い詰められる → 最初のパンチを防ぐ → カウンターの肘打ち → 相手をゴミ箱に投げ飛ばす → フィニッシュ。」 |
style_direction | テキスト | いいえ | シネマティックなアクション映画、アナモルフィックレンズ、ハイコントラスト、ヒット時のモーションブラー | すべてのフレームに適用する美的表現やルックのタグです。 |
duration | 整数 | いいえ | 15 | 最終動画の長さ(秒)です。デフォルトでは、ストーリーボードの16コマはおおよそ1秒につき1ショットに相当します。 |
aspect_ratio | テキスト | いいえ | 16:9 | 出力のアスペクト比です。シネマティックな 16:9、縦型の 9:16、正方形の 1:1 から選びます。 |
手順
フェーズA — キャラクターシート
muapi image generate(model=gpt-image-2-text-to-image)を使って、クリーンなターンアラウンド形式のキャラクターシートを生成します。
- プロンプト:
Character reference sheet of {{character_description}}. Three views — front, 3/4, profile — on a neutral grey backdrop. Studio lighting, full body, no text overlays, photoreal. Asymmetric identifying details preserved on the correct side. {{style_direction}}. - アスペクト比:
3:2
キャラクターシートを提示し、同一性に関する特徴が適切に表現されていることを確認してから次に進みます。この画像は、後続フェーズで参照画像 #1 として使用します。
フェーズB — 環境コンセプト
muapi image generate(model=nano-banana-2)を使って、シーン/世界をデザインします。
- プロンプト:
Wide establishing shot of {{environment_description}}. No characters in frame — environment only. Strong perspective lines, depth, atmospheric haze. {{style_direction}}. Production-design concept art. - アスペクト比:
{{aspect_ratio}}
ここでは、推論に基づく構図設計に優れたNano-Banana-2を選びます。アクションシーンで利用できる、空間的な整合性(チョークポイント、遮蔽物、見通し)のあるロケーションを生成する能力は、テキストから画像を生成するだけのモデルより優れています。承認用に提示します。これを参照画像 #2 として使用します。
フェーズC — 16コマのストーリーボード
muapi image edit(model=gpt-image-2-image-to-image)を使って、アクションを1枚の4×4ストーリーボード画像にまとめます。
- 参照画像:フェーズAのキャラクターシート と フェーズBの環境プレート。
- プロンプト:
Compose a 4×4 storyboard grid (16 numbered cells) for the following action sequence: {{action_script}} CHARACTER (use reference image 1 identity throughout, asymmetric details preserved): {{character_description}} LOCATION (use reference image 2 spatial layout): {{environment_description}} Each cell labels: SHOT # (1–16) · SIZE (WIDE / MS / CU / ECU) · CAMERA-MOVE arrow (push, pull, whip, dolly, crash-zoom, handheld) · 1-word RHYTHM note (BEAT / IMPACT / RECOVERY / RESET). Vary shot size aggressively — never two WIDEs in a row. Land every IMPACT on a CU or ECU. Hand-drawn comic-book ink-and-wash style, monochrome with selective red accents on hits. Numbered cells, clear gutters between panels. Aesthetic: {{style_direction}}. - アスペクト比:
1:1(4×4グリッドには正方形が最適です)
ストーリーボードをユーザーに提示します。次の点を確認します。
- 16個のショットが明確に読み取れる
- コマごとに同一性が保たれている
- カット密度やショットサイズの変化が十分に大胆である
パネルの見え方が不十分な場合は、該当セルの指示を太字にして(「CELL 7 must be an ECU on the right fist」など)、ストーリーボードだけを再生成します。
フェーズD — ストーリーボードから動画へ(Seedance 2.0)
ストーリーボードをmuapi video from-image(model=seedance-v2.0-i2v)に渡します。
- 参照画像:フェーズCの16コマのストーリーボード。
- プロンプト:
Generate a {{duration}}-second action sequence that strictly follows the 16-cell storyboard reference image, cell-by-cell, top-left to bottom-right. - Honour each cell's labelled SHOT SIZE and CAMERA-MOVE — match cuts to the storyboard's rhythm notes. - Strong cinematic feel and shot language. Exaggerated dynamics. Hits land hard with motion blur and impact frames. - Camera language: anamorphic, handheld where the storyboard calls for it, locked-off where it doesn't. - Native audio: impact sfx on every IMPACT cell, footsteps, fabric/Foley, restrained low score under the action. Action being rendered: {{action_script}}. Aesthetic: {{style_direction}}. - 長さ:
{{duration}}(デフォルトは15) - アスペクト比:
{{aspect_ratio}}
生成後、最終動画を提示します。カット密度が低すぎる、またはショットがストーリーボードと一致しない場合は、まずフェーズDを再生成します(ストーリーボードを作り直すより低コストです)。その際、「strict cell-by-cell adherence」をさらに強調するプロンプトにします。
注意事項
- テキストの絵コンテではなく、なぜ絵コンテ画像を使うのですか? Seedance 2.0 i2v は、ビジュアル参照を基準に動きのプランを組み立てます。16 個の描画セルを並べたグリッドを使うと、16 個のビジュアルターゲットを与えられます。一方、ショットのテキスト説明は平均化され、曖昧になります。
- キャラクターの左右非対称な特徴は重要です。 「右眉の上の傷」や「左手だけに革手袋」のような特徴がないと、セル間でのアイデンティティのぶれが最大の失敗要因になります。
- 下書きには
seedance-2.0-i2v-480pを使ってください。 フル解像度のseedance-v2.0-i2vを実行する前に、より低コストでプレビューできます。 - 長めの戦闘シーンでは、2 回の実行をつなげてください。1 回目は絵コンテ A(セル 1~16、ビート 1~15 秒)を使います。2 回目は絵コンテ B(セル 17~32、ビート 15~30 秒)を使い、連続性を保つため、B の最初のセルで A の最後のセルをアンカーとして使用します。
- 言語: 4 つのモデルすべてで英語と中国語の両方のプロンプトが使えるため、絵コンテのセルラベルはどちらの言語でも構いません。
トリガーキーワード
fight scene, action sequence, storyboard to video, cut density, cinematic action, combat choreography, seedance 2 storyboard
パイプラインの概要
character_description ──► [GPT-Image-2 t2i] ─► character sheet ──┐
│
environment_description ─► [Nano-Banana-2 t2i] ─► environment plate ┼─► [GPT-Image-2 i2i] ─► 16-cell storyboard ─► [Seedance 2.0 i2v] ─► 15s action video
│
action_script + style_direction ───────────────────────────────────►┘
実行エージェント向けの注意事項
- このレシピは LLM によってオーケストレーションされます。各フェーズを読み、不足している入力があればユーザーに確認してから、
muapiCLI コマンドを呼び出してください。MUAPI_API_KEYが設定されていない場合は、まずmuapi auth configureを使ってください。 - まだ CLI エイリアスのないモデル ID には、
curl -X POST https://api.muapi.ai/api/v1/<endpoint> -H "x-api-key: $MUAPI_API_KEY" -H 'content-type: application/json' -d '{...}'で生のエンドポイントにフォールバックし、muapi predict wait <request_id>でポーリングしてください。 - フェーズ C では 2 枚の参照画像(キャラクターシート+環境プレート)を使います。
gpt-image-2-image-to-imageを呼び出す際は、images_listの下にリストとして渡してください(またはモデルのドキュメントで指定されている複数参照用フィールドを使用してください)。 - 各呼び出しを実行する前に、
{{input_name}}のプレースホルダーをユーザーの実際の入力に置き換えてください。