Files
Popiai-skill/drama-production/storyboard/SKILL.md
T

165 lines
6.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: storyboard
display-name-zh: 分镜板
version: 1.0.2
description: |
N宫格分镜故事板生成器。根据用户提供的故事文档或描述,先拆解为逐镜头分镜表,
再调用 AI 生成 N 宫格故事板图片。
支持读取剧本文档(docx/txt)自动拆解镜头,也支持用户直接输入故事描述。
支持 2x2、3x3、4x4、5x5 等网格布局,每格画面比例可自定义(默认 16:9)。
触发词包括:分镜、故事板、storyboard、N宫格、九宫格、四宫格、网格分镜、
分镜拆解、镜头拆解、shot breakdown、画分镜、帮我拆镜头、
make a storyboard、visual script。
不适用于:完整纪录片/科普片视频生成(使用 documentary skill)、
角色三视图/四视图/表情包(使用 film-tv skill)、视频剪辑合成。
summary-cn: 输入剧本,生成分镜表和 N 宫格故事板
summary-en: Turn script into N-grid storyboards
tags: [Image, Shot-List, AI-Image]
tags-cn: [图片, 镜头表, AI图像]
exported-by: MiniMax-hub
---
# N宫格分镜故事板
将故事或剧本拆解为逐镜头分镜表,生成 N 宫格故事板图片。
## STEP 1: 收集故事来源
从用户消息中判断故事输入方式:
1. **文档输入** — 用户提供了 docx/txt 等剧本文档 → 读取文档内容
2. **直接输入** — 用户直接在对话中描述故事 → 直接使用
如果用户提供了文档,读取后给出 3 个选择:
| 选项 | 说明 |
|------|------|
| 前 9 个镜头 · 3x3 | 从剧情开头挑选前 ~9 个关键镜头,生成 3x3 九宫格 |
| 前 16 个镜头 · 4x4 | 从剧情开头挑选前 ~16 个关键镜头,生成 4x4 十六宫格 |
| 用户选一集 · 自动挑镜头 | 用户指定某一集/章节,由 AI 挑选核心镜头 |
如果用户直接输入故事(非文档),询问:
- **网格尺寸**2x2 / 3x3 / 4x4 / 5x5(默认 3x3
- **画面比例**:每格的宽高比(默认 16:9)
## STEP 2: 分镜拆解(镜头表)
根据选定的故事内容,拆解为逐镜头分镜表,以 Markdown 表格呈现。
**分镜表格式**
| Shot | 景别 | 画面描述 | 对应剧本台词 |
|:---:|:---:|---|---|
| 1 | 全景 / 特写 / 中景 / 近景 等 | 角色位置(含方位 N/S/E/W)、姿态、服装、动作、光影 | 角色(情绪):"台词" 或 无 |
**拆解规则**
1. **景别标注** — 每个镜头标注景别(全景 / 中景 / 中近景 / 近景 / 特写),可附加运镜说明(仰拍 / 俯拍 / 固定 / 推 / 拉)
2. **空间方位** — 角色位置使用方位标注(E/W/S/N),描述朝向和相对位置关系
3. **空镜规则** — 场景转换或环境交代时,先给一个空镜(台词为"无")建立空间感,因为单张图片无法同时传递环境信息和人物互动,分开处理可让每个镜头职责明确
4. **服装与状态** — 首次出现的角色完整描述服装外观;后续镜头如有状态变化则标注叠加状态
5. **光影描述** — 每个镜头包含光线/环境氛围描述
6. **台词格式**`角色(情绪标注):"台词内容"``无`(空镜 / 纯动作镜头)
拆解完成后,将分镜表以 Markdown 表格写入画布文本节点,展示给用户确认。
**⏸ 等待用户确认分镜表后再继续。**
## STEP 3: 询问参考素材
生成故事板图片之前,询问用户是否有参考素材(允许多选):
| 素材类型 | 说明 | 用途 |
|----------|------|------|
| 参考图 | 风格参考、氛围参考、画风参考 | 控制整体视觉风格、色调、画风 |
| 角色参考 | 角色立绘、角色照片、角色四视图 | 保持角色外观一致性 |
| 场景参考 | 场景概念图、实拍场景照片 | 保持场景环境一致性 |
| 无参考素材 | 让 AI 自由发挥风格 | — |
如果用户提供了参考素材:
- 从画布获取或从用户上传的文件路径获取
- 使用 `read_media` 分析参考素材的视觉特征,提取风格关键词
- 所有参考素材的文件路径传递给后续生成步骤
## STEP 4: 生成分镜提示词
调用 `text_generation` 工具,将 STEP 2 的分镜表 + STEP 3 的参考素材分析结果输入,生成结构化分镜 JSON。
System Prompt 模板见 → `references/panel-prompt-system.md`
**调用参数**
- `model`: `gemini-2.5-pro`
- `prompt`: 将分镜表填入模板的 `{{prompt}}`,网格设置 JSON 填入 `{{grid_setting}}`
- `images`: 如有参考素材,传入参考图路径列表
- `response_format`: `json_object`
返回的 JSON 包含 `panels`(每格描述)和 `overall_prompt`(整体合成 prompt)。
## STEP 5: 生成 N 宫格故事板图片
从 STEP 4 返回的 JSON 中提取 `overall_prompt` 字段,调用 `nano_banana_image_generation` 生成故事板图片。
**指定模型**`nano_banana_2`Gemini 3 Pro,网格图质量最佳,当前唯一可靠生成多格分镜的模型)。
**Prompt 构造**:在 `overall_prompt` 前加上网格布局指令:
```
Generate a {rows}x{cols} grid storyboard image. The grid has {rows} rows and {cols} columns. Each cell represents a sequential scene panel with {cell_ratio} aspect ratio. Arrange the panels left-to-right, top-to-bottom. Add thin white borders between panels for clear separation.
{overall_prompt}
```
**参数**
- `model`: `nano_banana_2`
- `reference_images`: 传入用户的参考图(如有)
- `aspect_ratio`: 根据网格和 cell_ratio 计算(同行列数网格的整体比例 = 单格比例)
- `resolution`: `high`(高分辨率,确保每格细节清晰)
**比例计算参考**
| 网格 | 单格比例 | 整体比例 |
|------|----------|----------|
| NxN (2x2/3x3/4x4/5x5) | 16:9 | 16:9 |
| NxN | 9:16 | 9:16 |
| NxN | 1:1 | 1:1 |
> 同比例网格,整体比例 = 单格比例。当行列数不同时(如 2x3),需单独计算。
## STEP 6: 输出结果
向用户展示三部分内容:
1. **分镜拆解表** — STEP 2 生成的镜头表格(已在画布上)
2. **分镜提示词** — STEP 4 生成的 JSON,格式化展示 style_profile 和每个 panel 的描述
3. **N 宫格故事板图片** — STEP 5 生成的图片
展示格式:
```
## 分镜故事板
### 风格分析
{reference_analysis}
### 统一风格
{style_profile}
### 分镜描述
| 位置 | 描述 |
|------|------|
| (0,0) | {panel_description} |
| (0,1) | {panel_description} |
| ... | ... |
### 故事板图片
[生成的 N 宫格图片]
```
## 注意事项
- 所有 AI 生成的 prompt 使用英文,用户交互使用中文
- 参考图是风格的最高权威 — 分镜内容需适配参考图的风格,因为保持视觉一致性是故事板的核心价值
- 角色参考图是角色外观的最高权威 — 所有包含该角色的 panel 与参考一致,以确保观众能跨镜头识别同一角色
- 每个 panel description 自包含,可独立作为图片生成 prompt
- 空镜在 panel description 中侧重环境氛围描写