skills/openclaw/skills/storyboard-generator

storyboard-generator

SKILL.md

分镜表生成器

将剧本转换为分镜表和静帧提示词,输出可直接用于图像生成的标准化数据。

核心原则

  • 叙事层对齐:每镜头只交代 1 个"唯一信息点"
  • 镜头层对齐:景别/机位/定格瞬间必须明确
  • 画面层对齐:构图、主体位置、光色、风格锚点一致
  • 提示词三段式:风格段 + 主体段 + 画面段,引用资产库

输入要求

必填

  • 剧本正文:标准格式剧本(含场标题、人物表、镜头动作、台词)
  • STYLE_BASE:风格锚点
  • 角色卡列表:带 @角色ID
  • 场景卡列表:带 SceneKey

可选

  • 道具卡列表:带 PropKey
  • STYLE_VAR:风格变体(回忆/梦境等)
  • 画幅:默认 16:9
  • 镜头密度:默认 18 镜头/集

生成流程

步骤 1:分析剧本结构

提取本集信息:

  • 本集目标/主情绪
  • 钩子点
  • 场景列表
  • 主要角色

步骤 2:导演三帧分镜(每场)

为每场生成 3 张关键帧:

  • 起帧:建立环境与关系
  • 爆帧:冲突/动作爆点
  • 钩帧:悬念/转场/情绪余波

步骤 3:展开完整镜头表

基于三帧法展开为完整镜头表。

步骤 4:生成提示词

为每个镜头生成三段式提示词。

输出格式

1. 本集导演锚点总结

## 本集导演锚点

- **本集目标:**{一句话目标}
- **主情绪:**{紧张/热血/温馨/压抑}
- **钩子:**{前10秒抓手}
- **场景列表:**
  - 1-1 {场景名}
  - 1-2 {场景名}
  - ...
- **主要角色:**@角色1, @角色2

2. 导演三帧分镜法(每场)

### 场次:{场号} {场景名}

#### 起帧 (KF_A)
- **镜头ID:**E{集}_S{场}_KF_A
- **目的标签:**信息/情绪/动作/反转/钩子(选1)
- **唯一信息点:**{一句话}
- **定格瞬间:**{一句话,可截图}
- **景别/机位:**{全景/中景/近景/特写} + {平视/俯视/仰视/主观}
- **主导运镜:**静止/微推/拉远/轻摇/跟拍(选1)

**提示词(banana版):**
- 风格:{STYLE_BASE}
- 主体:{@角色ID形象描述},{本镜头表情动作}
- 画面:{SceneKey场景描述},{景别},{机位},{构图},{定格瞬间}

**提示词(即梦版):**
- 风格:{STYLE_BASE}
- 主体:{@角色ID形象描述},{本镜头表情动作}
- 画面:{SceneKey场景描述},{景别},{机位},{光线},{材质},{定格瞬间}

#### 爆帧 (KF_B)
...

#### 钩帧 (KF_C)
...

3. 镜头表(Shot List)

## 镜头表

| ShotID | SceneID | 景别 | 机位 | 运镜 | 目的 | 唯一信息点 | 定格瞬间 | 动作链 | 台词/OS | CharID | SceneKey | 优先级 | 状态 |
|--------|---------|------|------|------|------|------------|----------|--------|---------|--------|----------|--------|------|
| E01_S01 | 1-1 | 全景 | 平视 | 静止 | 信息 | {信息点} | {定格} | {动作} | {台词} | @xxx | scene_xxx | P0 | todo |
| E01_S02 | 1-1 | 近景 | 平视 | 微推 | 情绪 | {信息点} | {定格} | {动作} | {台词} | @xxx | scene_xxx | P1 | todo |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |

4. 静帧提示词清单

## 静帧提示词

### E01_S01

**三段式提示词(banana版 - 构图优先):**
- 风格:{STYLE_BASE一句话}
- 主体:{角色形象},{表情动作}
- 画面:{场景描述},{景别}{机位},{构图描述},{主体位置},{定格瞬间}

**三段式提示词(即梦版 - 画风优先):**
- 风格:{STYLE_BASE一句话}
- 主体:{角色形象},{表情动作}
- 画面:{场景描述},{景别}{机位},{光线},{材质},{氛围},{定格瞬间}

**完整提示词(直接复制用):**

{STYLE_BASE},{角色形象},{表情动作},{场景描述},{景别}{机位},{构图},{定格瞬间},高清细节


**负向提示词:**
文字、水印、logo、边框、二维码、现代建筑、现代服饰、枪械、车辆、血腥特写、内脏、喷溅、恐怖猎奇、低清晰度、模糊、噪点、过曝、透视错误、肢体畸形、多余手指、画面脏乱

---

### E01_S02
...

5. QC 检查清单

## QC 检查

### P0(必须修复 - 影响剪辑)
- [ ] 是否缺建立/反应/转场镜头?
- [ ] 定格瞬间是否"一眼看懂"?
- [ ] 是否有轴线跳跃?
- [ ] 信息点是否清晰?

### P1(第二优先 - 影响一致性)
- [ ] 角色脸/服装是否漂移?
- [ ] 道具是否与角色卡一致?
- [ ] 场景锚点是否保持?

### P2(最后修复 - 美观问题)
- [ ] 画面是否足够干净?
- [ ] 光影是否统一?
- [ ] 是否足够电影化?

镜头表字段说明

字段 说明 示例
ShotID 镜头唯一标识 E01_S01
SceneID 场次号 1-1
景别 远景/全景/中景/近景/特写 近景
机位 平视/俯视/仰视/越肩/主观 平视
运镜 静止/微推/拉远/轻摇/跟拍 静止
目的 信息/情绪/动作/反转/钩子 情绪
唯一信息点 本镜头传达的唯一信息 陈风发现敌人
定格瞬间 可截图的关键帧描述 陈风猛然转身,眼神警觉
动作链 2-4 步可视化动作 转身→拔剑→戒备
台词/OS 本镜头台词或内心独白 OS:有杀气!
CharID 主体角色 ID @jl_chenfeng
SceneKey 场景 Key scene_jl_yaoshougu
优先级 P0/P1/P2 P0
状态 todo/ok/fix todo

提示词三段式拼装规则(强制)

最终提示词 = 风格段 + 主体段 + 画面段

┌──────────┐   ┌──────────┐   ┌──────────┐
│ 风格段    │ + │ 主体段    │ + │ 画面段    │
└────┬─────┘   └────┬─────┘   └────┬─────┘
     │              │              │
     ▼              ▼              ▼
┌──────────┐   ┌──────────┐   ┌──────────┐
│STYLE_BASE│   │@角色ID   │   │SceneKey  │
│风格一句话 │   │形象描述  │   │场景描述  │
│          │   │+表情动作 │   │+景别机位 │
│          │   │增量      │   │+定格瞬间 │
└──────────┘   └──────────┘   └──────────┘

景别选择指南

景别 用途 示例场景
远景 建立环境、展示规模 山川全貌、城池远眺
全景 展示人物全身、空间关系 角色站立、多人场景
中景 展示动作、人物互动 对话、交手
近景 展示表情、情绪 反应、独白
特写 强调细节、关键道具 眼神、手部、道具

机位选择指南

机位 情绪效果 示例
平视 中性、客观 日常对话
俯视 弱势、渺小 角色陷入困境
仰视 强势、威严 强者出场、压迫感
越肩 代入、对峙 两人对话
主观 沉浸、紧张 发现敌人、探索

18 镜头默认覆盖

每集建议 18 镜头分布:

1-1 场(约 6 镜头)
├── 建立镜头 ×1(环境/关系)
├── 信息镜头 ×1(关键道具/人物)
├── 动作镜头 ×2(主要动作)
├── 反应镜头 ×1(情绪反应)
└── 转场镜头 ×1(切出/悬念)

1-2 场(约 6 镜头)
├── ...

1-3 场(约 6 镜头)
├── ...

通用负向提示词

文字、水印、logo、边框、二维码、现代建筑、现代服饰、枪械、车辆、血腥特写、内脏、喷溅、恐怖猎奇、低清晰度、模糊、噪点、过曝、透视错误、肢体畸形、多余手指、画面脏乱

质量检查

生成后必须自检:

  • 每镜头是否只有 1 个唯一信息点?
  • 定格瞬间是否可截图?
  • 提示词是否引用资产库(STYLE_BASE/@角色ID/SceneKey)?
  • 是否有建立/反应/转场镜头?
  • 主体是否只有 1 个(配角虚化/剪影)?

HTML 展示输出

必须输出

完成分镜表生成和图片生成后,必须生成 HTML 展示页面。

模板位置

assets/templates/gallery.html

输出文件命名

{项目名}_分镜展示_第{集数}集.html

保存到与分镜表相同的目录。

占位符替换

占位符 替换内容 示例
{{PROJECT_NAME}} 项目名称 剑来
{{EPISODE_TITLE}} 集数标题 第一集
{{TOTAL_COUNT}} 总镜头数 36
{{P0_COUNT}} P0核心镜头数 18
{{P1_COUNT}} P1重要镜头数 14
{{P2_COUNT}} P2氛围镜头数 4
{{NAV_ITEMS}} 导航项HTML -
{{GALLERY_SECTIONS}} 分组HTML(见下方格式) -
{{SHOT_DATA_JSON}} 镜头数据JSON对象 -
{{GENERATED_TIME}} 生成时间 2026-02-02

导航项 HTML 格式

<a href="#scene-1-1" class="gallery-nav-item active">1-1 陈平安院子</a>
<a href="#scene-1-2" class="gallery-nav-item">1-2 龙窑方向</a>
<!-- 更多导航项 -->

分组 HTML 格式(按场次分组)

<section id="scene-1-1" class="gallery-section">
    <div class="gallery-section-header">
        <h2 class="gallery-section-title">1-1 陈平安院子 夜内</h2>
        <span class="gallery-section-count">3镜</span>
    </div>
    <div class="gallery-grid">
        <div class="gallery-card" onclick="openLightbox('E01_S01')">
            <div class="gallery-card-image">
                <img src="{图片URL}" alt="E01_S01">
                <div class="gallery-card-badges">
                    <span class="gallery-card-badge priority p0">P0</span>
                    <span class="gallery-card-badge purpose">信息</span>
                </div>
            </div>
            <div class="gallery-card-info">
                <p class="gallery-card-shot">E01_S01</p>
                <h3 class="gallery-card-title">烛光少年</h3>
                <p class="gallery-card-desc">破败小院中有个孤苦少年</p>
                <div class="gallery-card-meta">
                    <span class="gallery-card-meta-item">景别: <span>近景</span></span>
                    <span class="gallery-card-meta-item">机位: <span>平视</span></span>
                </div>
            </div>
        </div>
        <!-- 更多镜头卡片 -->
    </div>
</section>

镜头数据 JSON 格式

{
    "E01_S01": {
        "id": "E01_S01",
        "title": "烛光少年",
        "scene": "1-1",
        "image": "{图片URL}",
        "shotSize": "近景",
        "angle": "平视",
        "movement": "静止",
        "purpose": "信息",
        "priority": "P0",
        "info": "破败小院中有个孤苦少年",
        "moment": "清瘦的手持蜡烛,烛光摇曳,照亮昏暗的房梁",
        "prompt": "二次元国风仙侠风格,国漫赛璐璐+轻厚涂融合,干净利落线稿,柔和月光,降低饱和度15%偏冷蓝调,14岁亚洲男性少年,乌发蓬松微乱,灰褐色粗布短衫,指节粗糙有茧,手持白蜡烛,烛光映照面部,神情专注带孤寂,古代破败小屋内,木质房梁,近景,平视,烛光暖黄与月光冷蓝对比,孤寂氛围,高清细节"
    },
    // 更多镜头...
}

生成后操作

  1. 保存 HTML 文件
  2. 使用 open {文件路径} 命令在浏览器中打开展示

额外资源

Weekly Installs
3
Repository
openclaw/skills
GitHub Stars
3.8K
First Seen
Feb 16, 2026
Installed on
amp3
opencode3
kimi-cli3
codex3
github-copilot3
gemini-cli3