关于 muapi-ai-fight-scene
muapi-ai-fight-scene 是一项由 LLM 编排的技能,通过角色和环境图像、16 格分镜及图生视频生成打斗视频。它适合借助逐镜头视觉参考设计动作编排,并检查角色连贯性。
主要功能
- 01生成角色参考图
- 02生成环境概念图
- 03制作 4×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 个不同镜头——命中拳击、反打镜头、特写、甩镜——这是单靠 t2v 提示词无法编排出来的。
输入
| 名称 | 类型 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
character_description | 文本 | 是 | — | 格斗者的完整外貌描述。不对称特征(眼睛颜色、疤痕所在侧、左侧臀部的枪套)有助于模型在不同分镜格中保持人物身份一致。 |
environment_description | 文本 | 是 | — | 场景设定,例如“赛博朋克风格的潮湿后巷、霓虹灯汉字招牌、《Stray》游戏美学、雨水打在铬金属上”。 |
action_script | 文本 | 是 | — | 动作节拍——可以是散文,也可以是编号节拍。例如:“英雄被逼入绝境 → 挡住第一拳 → 以肘反击 → 把对手扔进垃圾桶 → 终结技。” |
style_direction | 文本 | 否 | cinematic action film, anamorphic lens, high contrast, motion blur on hits | 应用于每一帧的美学/视觉风格标签。 |
duration | 整数 | 否 | 15 | 最终视频时长,单位为秒。默认情况下,分镜的 16 格大致对应每秒 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)将动作安排到一张 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 必须是右拳的特写”)。
阶段 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(比重做分镜成本更低),并在提示词中更强烈地强调“严格逐格遵循”。
备注
- 为什么用分镜图,而不是文字分镜? Seedance 2.0 i2v 会根据视觉参考来确定动作计划。一张包含 16 个绘制画格的网格能为它提供 16 个需要实现的视觉目标——镜头的文字描述会被平均成一团模糊内容。
- 不对称的角色细节很重要。 如果没有“右眉上方有疤痕”或“只有左手戴着皮手套”之类的细节,画格间的身份漂移就会成为头号失败原因。
- 用
seedance-2.0-i2v-480p起草。 先进行成本更低的预览,再决定是否运行完整分辨率的seedance-v2.0-i2v。 - 对于更长的打斗场景,串联两次运行:第一次使用分镜 A(画格 1–16,节拍 1–15 秒);第二次使用分镜 B(画格 17–32,节拍 15–30 秒),并将 A 的最后一个画格作为 B 第一个画格中的连续性锚点。
- 语言:四个模型都支持英文和中文提示词,因此分镜画格标签可以使用任一种语言。
触发关键词
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 ───────────────────────────────────►┘
执行 Agent 注意事项
- 此流程由 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 使用两张参考图(角色设定表 + 环境底图)。调用
gpt-image-2-image-to-image时,将它们作为列表传入images_list(或该模型文档规定的多参考图字段)。 - 每次调用前,将
{{input_name}}占位符替换为用户提供的实际输入。