Răsfoiți Sursa

feat(route): 动线设计前置必读——先读《空间索引.json》+《00_俯瞰图_修订_带布局编号V4.jpeg》理解布局,再设计控速/控长的合理动线

- SKILL/README/docs/elements/wan3-workflow/script-template/store-spatial-index 同步新增『动线前置必读』硬规则:
  设计动线前必须先阅读 assets/store-spatial-index/ 下《空间索引.json》与《00_俯瞰图_修订_带布局编号V4.jpeg》,理解店内整体布局(各 zone 相对位置、连通关系、可步行串联关系),再设计总时长 T 范围内的合理动线
- 控速/控长约束:人物走动速度自然从容不疾走,动线长度(跨 zone 数/步行距离)与 T 匹配,切忌走太快或动线过长(避免瞬移式跨区/赶场感)
- store-spatial-index.md 空间锚定硬规则顶部新增『动线设计前置必读(最重要)』置顶提示;script-template 动线设计规划表上方新增 🗺️ 前置必读块
zhengqi 1 săptămână în urmă
părinte
comite
dc7eb28a55

+ 1 - 1
README.md

@@ -61,7 +61,7 @@ graph TD
 
 ### 1. 编导分镜要点(确保真实感 · 五块)
 
-- **人物行为动线**:单段(≤30 秒)≤2 个动作、方向不反向(「走动→落座」则落座后不再起身;「坐姿→起身走动」则走动后不再落座);口播时不设计整理产品等手部摆弄动作,手部只用自然手势 / 点头。
+- **人物行为动线**:单段(≤30 秒)≤2 个动作、方向不反向(「走动→落座」则落座后不再起身;「坐姿→起身走动」则走动后不再落座);口播时不设计整理产品等手部摆弄动作,手部只用自然手势 / 点头;**动线须在先理解店内整体布局后设计(读《空间索引.json》+《00_俯瞰图_修订_带布局编号V4.jpeg》),人物走动速度自然、动线长度与总时长 T 匹配,切忌走太快或动线过长**。
 - **运镜组合**:2–3 种随机穿插(跟随 / 推近 / 拉远 / 横移 / 手持微晃)。
 - **插画展示方式**:仅限局部画中画——形状随机选用**正方形或圆形**,单个插图**宽度 ≤ 画面 1/2、高度等比**,可置于**画面任意位置但不遮挡人物面部**;**禁止全屏铺盖与人物画中画式全屏**(用户 2026-09-17 规则 + 2026-09-22 尺寸约束补充)。
 - **门店丰富元素**:前台 / 美容床 / 沙发 / 桌椅 / 其他店员虚化走过,随机点缀 2–3 个增加景深。

+ 3 - 3
SKILL.md

@@ -99,7 +99,7 @@ agent_created: true
 
 **产物落盘**:本步生成的两类物料保存到**本任务的 `<任务短名>/` 文件夹**——人物完整形象照放根目录;插画放 `插画/` 子目录;门店空间实景图(按动线 zone 从资源包选取)另存 `门店实景/` 子目录;便于后续统一引用与归档。若人物沿用上次已确认物料,复制一份进本任务文件夹保持自包含。
 
-> ⚠️ **动线规划须最先确定(本步选取实景图的前置)**:在选取门店实景图前,先依选题/口播主题与 `references/store-spatial-index.md`(Z01–Z09 可用区)规划本片动线——列出本片**出场/经过的 zone、开场 zone、走位 zone、插画所在 zone**;**人物出场场景由动线规划决定,不再固定前台**。随后按动线涉及的 zone 从 `assets/store-spatial-index/` 选取对应实景图(LOGO 随实景图自然呈现,不另行生成含 LOGO 门店图)。该动线规划在 Step 8 组装时填入脚本第五节【动线设计规划】表。
+> ⚠️ **动线规划须最先确定(本步选取实景图的前置)**:**设计动线前,必须先阅读 `assets/store-spatial-index/` 下的《空间索引.json》与《00_俯瞰图_修订_带布局编号V4.jpeg》,理解店内整体布局(各 zone 相对位置、连通关系、哪些区可步行串联)**;在选取门店实景图前,先依选题/口播主题与 `references/store-spatial-index.md`(Z01–Z09 可用区)规划本片动线——列出本片**出场/经过的 zone、开场 zone、走位 zone、插画所在 zone**;**人物出场场景由动线规划决定,不再固定前台**。随后按动线涉及的 zone 从 `assets/store-spatial-index/` 选取对应实景图(LOGO 随实景图自然呈现,不另行生成含 LOGO 门店图);**动线长度(跨越 zone 数与步行距离)与人物走动速度须与总时长 T 匹配,切忌走太快或动线太长(避免瞬移式跨区 / 赶场感)**。该动线规划在 Step 8 组装时填入脚本第五节【动线设计规划】表。
 
 按 `references/asset-collection.md` 第二节,用图像生成工具基于锁定素材生成并展示,请用户确认后才作为 wan3 参考图:
 1. **人物完整形象照 — 1 张(可生成 2–3 张供选)**:以 `character_5view` 为人物参考、`uniform_detail` 为制服参考,合成「人物身穿制服的完整形象照」;胸牌样式与 `uniform_detail` 完全一致、不可变更。→ 确认后作为 **Image 1**。
@@ -145,7 +145,7 @@ agent_created: true
 一、角色定义 → 二、固定品牌素材 → 三、自动生成素材 → 四、口播文案(口语化,字数校验)→ **四-补、插画插入点** → 五、单段视频 Prompt(整段 [T] 秒、T 由 Shot 台词时间分配表求和得出且 ≤30,**官方公式版**:总体描述 + Shot序号 + 时间戳 + 分镜内容,时间戳英文 `Shot N [x-y s]`、台词 `{}` 圈出;**prompt 中禁止写 Image N/Audio N**)→ 六、保留分析 → 七、硬性禁令 → 八、AI 口令(wan3 请求:命令 + JSON)。
 - **落盘**:组装完成后,将脚本写入**本任务文件夹** `脚本_<主题>.md`;并把第五节整段 prompt 单独写出到本任务文件夹 `prompt.txt`(供 Step 10 直接 `--prompt "$(cat .../prompt.txt)"` 读取)。
 - 第五节单段 Prompt **必须按 `wan3-workflow.md` 第四节「编导分镜版」范式写**,像专业编导一样覆盖四块:
-  1. **人物行为动线**(元素 25):单段(≤30 秒)内 **≤2 个动作切换**,且方向不反向("走动→落座"则落座后不再起身;"坐姿→起身走动"则走动后不再落座);**口播时不设计"整理产品"等手部摆弄动作**,手部只用自然手势 / 点头;全程在门店场景里与场景互动,**绝不全程正对镜头站桩**。
+  1. **人物行为动线**(元素 25):单段(≤30 秒)内 **≤2 个动作切换**,且方向不反向("走动→落座"则落座后不再起身;"坐姿→起身走动"则走动后不再落座);**口播时不设计"整理产品"等手部摆弄动作**,手部只用自然手势 / 点头;全程在门店场景里与场景互动,**绝不全程正对镜头站桩**;动线须在先阅读《空间索引.json》+《00_俯瞰图_修订_带布局编号V4.jpeg》理解店内整体布局后设计,人物走动速度自然从容、不疾走,动线长度(跨 zone 数 / 步行距离)须与总时长 T 匹配,切忌走太快或动线过长(避免瞬移式跨区 / 赶场感)。
      - 动线须在脚本第五节以 **【动线设计规划】表**逐 Shot 拆解(姿态/走位、手势/肢体、场景互动点),与下方分镜脚本一一对应,落实"≤2 动作切换、不反向、不站桩"。
   2. **运镜组合**(元素 12):每条约 2–3 种手法按时间轴穿插(跟随 / 推近 / 拉远 / 横移 / 手持微晃),随机组合、不全程单一机位。
   3. **插画展示方式**(元素 26):在「插画插入点」处触发,插画以**画中画**形式呈现——**形状随机选用正方形或圆形**,单个插图**宽度 ≤ 画面宽度的 1/2、高度等比**,可置于**画面任意位置但不遮挡人物面部**,**禁止全屏铺盖 / 人物画中画式全屏**(用户 2026-09-17 硬性规则 + 2026-09-22 尺寸约束补充);同一视频多次出现可轮换形状 / 位置,不固化一种。
@@ -180,7 +180,7 @@ agent_created: true
 - **风格先确认后出图**:发起任务先文字版问风格,再生成「人物完整形象照 + 插画」示例图供确认;门店场景直接采用门店空间索引实景图,无需生成示例。
 - **单片段 ≤30 秒**:口播预计超 30 秒必须反馈精简、循环直到满足;不拆分片段(最终 T 由 Step 8 Shot 表求和确认)。
 - **LOGO 随实景自然呈现**:门店 LOGO 不另行生成,随选取的门店空间实景图(品牌墙 Z01「YIHEMEI 你的水光肌肤管理师」/ 发光字展柜 Z02 等)自然出现在成片;动线主场景若途经含 LOGO 的 zone,LOGO 即在画面中。
-- **动线规划最先确定**:人物出场场景由动线规划决定,不固定前台;动线规划须于 Step 4 选取实景图前先行确定(见 Step 4 前置说明),并填入脚本第五节【动线设计规划】表(含场景 zone 列),门店实景图据此按对应 zone 选取。
+- **动线规划最先确定**:人物出场场景由动线规划决定,不固定前台;**设计动线前必须先阅读 `assets/store-spatial-index/` 下的《空间索引.json》与《00_俯瞰图_修订_带布局编号V4.jpeg》理解店内整体布局**;动线规划须于 Step 4 选取实景图前先行确定(见 Step 4 前置说明),并填入脚本第五节【动线设计规划】表(含场景 zone 列),门店实景图据此按对应 zone 选取。
 - **原生音视频**:口播写进 prompt 作对白,音色作 reference_audio,wan3 一次性生成画面+对白+口型+环境音。
 - **插画插入点确认**:插画与口播文案都确认后,必须请用户指定插画从口播哪一句开始融入,再组装 prompt(见 Step 7);不静默默认。
 - **编导分镜(不站桩)**:单段 Prompt 必须像专业编导覆盖五块——① 人物行为动线(按内容长短设计走动/坐/起/落座,不全程正对镜头)② 运镜组合(2–3 种随机穿插)③ 插画展示方式(圆形PiP/条状PiP/侧边PiP 随机混用不固化、禁全屏)④ 门店丰富元素(前台/美容床/沙发/其他人物虚化走过随机点缀)⑤ **背景逐段锚定**(每个 Shot 绑定对应 zone 参考图元素清单,详见 `wan3-workflow.md` 坑4 与 `references/store-spatial-index.md`);详见 `wan3-workflow.md` 第四节与 `elements.md` 元素 12/25/26/27。

+ 2 - 0
assets/script-template.md

@@ -106,6 +106,8 @@
 结构说明:以下「Shot序号 + 时间戳 + 分镜内容」为本片分镜脚本;Shot序号与时间戳是给模型的
 节奏结构指令,不是台词,禁止当作语音读出;也禁止在任意空白时段补加台词或语气词。
 
+> **🗺️ 动线前置必读**:设计下表动线前,必须先阅读 `assets/store-spatial-index/` 下的《空间索引.json》与《00_俯瞰图_修订_带布局编号V4.jpeg》,理解店内整体布局(各 zone 相对位置、连通关系、可步行串联关系);**动线长度与人物走动速度须与总时长 T 匹配,切忌让人物走动太快或动线过长(避免瞬移式跨区 / 赶场感)**。动线所涉 zone 据此从资源包选取实景图。
+
 【动线设计规划】(按 Shot 拆解;下表为示例,按本片实际主题替换对应行。⚠️ **人物出场场景由本规划决定,不固定前台**;硬约束:单段 ≤2 个动作切换且方向不反向、绝不全程正对镜头站桩、须与门店场景互动)
 
 > **📐 Shot 台词时间分配表(时长预算)**:本表「时间」列即逐 Shot 的台词时间分配,须**按本任务台词内容**规划(每 Shot 绑定对应口播句数与篇幅)。各 Shot 时长**求和 = 本段预计总时长 T**(上表示例 = 30s,仅作格式演示)。**T 即本段实际 `duration`,必须 ≤30 秒**;T 同步用于:总体描述「撑满约[T秒]」、下方分镜脚本时间戳 0→T 连续铺满、以及第八节 `--duration T` / JSON `duration`。若求和 >30,回第四节精简口播。

+ 1 - 1
docs/暨北内部-朵朵口播视频专用技能.md

@@ -32,7 +32,7 @@
 
 ### 3. 固定编导规则(确保真实感、不 AI 感)
 - **单段时长**:整段一个片段、**≤30 秒**(时长不固定 30 秒,由 Shot 台词时间分配表求和得 T 作实际 duration;超 30 秒自动反馈精简,绝不拆片段)。
-- **人物动线**:单段(≤30 秒)动作**≤2 个、方向不反向**——「走动→落座」则落座后不再起身;「坐姿→起身走动」则走动后不再落座;**口播中不设计整理产品等手部摆弄动作**,手部只用自然手势 / 点头。
+- **人物动线**:单段(≤30 秒)动作**≤2 个、方向不反向**——「走动→落座」则落座后不再起身;「坐姿→起身走动」则走动后不再落座;**口播中不设计整理产品等手部摆弄动作**,手部只用自然手势 / 点头;**动线须在先理解店内整体布局后设计(读《空间索引.json》+《00_俯瞰图_修订_带布局编号V4.jpeg》),人物走动速度自然、动线长度与总时长 T 匹配,切忌走太快或动线过长**。
 - **运镜组合**:2–3 种随机穿插(跟随 / 推近 / 拉远 / 横移 / 手持微晃)。
 - **插画展示方式**:仅限局部画中画——形状随机选用**正方形或圆形**,单个插图**宽度 ≤ 画面 1/2、高度等比**,可置于**画面任意位置但不遮挡人物面部**;**禁止全屏铺盖 / 人物画中画式全屏**(用户 2026-09-17 规则 + 2026-09-22 尺寸约束)。
 - **门店丰富元素**:前台 / 美容床 / 沙发 / 桌椅 / 其他店员虚化走过,随机点缀 2–3 个增加景深。

+ 1 - 0
references/elements.md

@@ -142,6 +142,7 @@
   - **口播讲解时不设计"整理产品 / 轻触产品 / 翻阅资料"等无意义手部摆弄动作**(用户明确要求去掉),手部只用自然手势比划 / 轻微点头等微动作。
   - 每段口播都要有人物与门店场景的互动行为,避免"一直正对镜头不动"的死板站桩。
   - 手势比划 / 轻微点头等微动作不算独立动线,可全程保留,不计入 2 个上限。
+  - **设计动线前必须先读布局**:阅读 `assets/store-spatial-index/《空间索引.json》` 与 `《00_俯瞰图_修订_带布局编号V4.jpeg》`,理解店内整体布局(各 zone 相对位置、连通关系、可步行串联关系)后再设计本片动线;动线长度(跨越 zone 数 / 步行距离)与人物走动速度须与总时长 T 匹配,切忌让人物在空间里走动太快或动线过长(避免瞬移式跨区 / 赶场感)。
 - 说明:这是导演级分镜设计,由技能在组装单段 Prompt 时按内容自动编排,不进用户风格问卷。
 
 ## 26. 插画展示方式(Illustration Presentation,随机使用不固化)

+ 2 - 0
references/store-spatial-index.md

@@ -51,6 +51,8 @@
 
 ## 3. 空间锚定硬规则(wan3 生成必守,踩坑总结)
 
+> ⚠️ **动线设计前置必读(最重要)**:**设计任何动线前,必须先阅读本目录的《空间索引.json》与《00_俯瞰图_修订_带布局编号V4.jpeg》,理解店内整体布局**(各 zone 相对位置、连通关系、哪些区可步行串联)。在总时长 T 范围内设计合理动线:人物走动速度自然从容、不疾走,动线长度(跨越的 zone 数与步行距离)须与 T 匹配,**切忌让人物在空间里走动太快或动线过长**(避免"瞬移式"跨区或赶场感)。
+
 1. **镜头真实经过的过渡空间必须传实景图**(如走廊走 Z05):俯瞰图 + 文字描述不能替代,否则模型会脑补、克隆出「幽灵硬件」(曾凭空多出第二个前台)。
 2. **参考图里出现的门必须显式声明状态**:关闭 / 仅作背景 / 禁止穿行。不声明则 wan3 会把门当动线通道(曾出现「穿门」错误)。
 3. **开放式空间要正面定性**:写「三面连通、不封闭、不是房间」,光列 anchors 不够。

+ 1 - 1
references/wan3-workflow.md

@@ -89,7 +89,7 @@ Shot 6 [26-30s]:[结尾缓慢拉远收束,她保持站立、抬手手势收
 ```
 
 - 口播台词用花括号 `{}` 圈出、逐句写进各 Shot 的「分镜内容」,wan3 原生生成语音并对口型;`{}` 之外的是画面/运镜描述,不会被当台词。
-- **人物行为动线**按口播时长设计:单段(不论 T 长短)动作切换 **≤2 个**、方向不反向(见 SKILL Step 8 元素 25);动作幅度随 T 伸缩,短于 30 秒更不宜多。
+- **人物行为动线**按口播时长设计:单段(不论 T 长短)动作切换 **≤2 个**、方向不反向(见 SKILL Step 8 元素 25);动作幅度随 T 伸缩,短于 30 秒更不宜多;**设计动线前须先阅读 `assets/store-spatial-index/《空间索引.json》` 与 `《00_俯瞰图_修订_带布局编号V4.jpeg》` 理解店内整体布局,动线长度与走动速度须与 T 匹配,切忌走太快或动线过长(避免瞬移式跨区 / 赶场感)**。
 - **运镜**每条约 2–3 种按时间轴穿插,不全程单一机位;**插画展示方式**一场内可混用多种,不恒定为一种;**门店丰富元素**随机点缀 2–3 个,增加景深与真实感。
 - **时间戳即控速锚点(关键)**:`Shot N [x-y s]` 连续铺满本段总时长 T(即 0→T,如 0–26s),既是分镜结构也是节奏约束,也等于 `duration` 的实际值。T 由各 Shot 时长求和得出,必须 ≤30。wan3 实测在「强制时长 > 口播实际长度」的空白时段会**自动编造废话填充**(padding 幻觉),故 Shot 时间分配须让台词真实撑满时间戳区间——靠放慢语速 + 句间留足气口,而非空撑时长。**推荐直接传算出的 T(不要硬撑到 30)**;若内容确实偏短,可改用 `−1` 智能时长(按内容自动定长,上限 30s)。
 - 时长参数 `duration` 须传**本段算出的 T**(各 Shot 时长之和,≤30),不要写死 30;`ratio=9:16`,`resolution` 按 config;若口播偏短或要规避 padding,也可设 `−1` 智能时长(按内容自动定长,上限 30s)。