跳到正文

角色场景与制作资产管理

将剧本中的角色、场景和道具整理为一致的制作资产,记录视觉依据和后续使用要求。

开源精选视频内容27 个文件2,909 Stars浏览次数 0zenstory-ai/drama-skills MIT版本 f53fb20
开始使用

下载前阅读 SKILL.md 中的使用条件,并确认所用工具支持对应能力。

输入资料
确认后的故事或剧本 角色、场景和美术设定 阅读本节完整说明
交付内容
制作资产资料 角色场景说明与连续性依据 阅读本节完整说明
环境与依赖
只有安装、升级或排障时运行 python3 scripts/selftest.py。 阅读本节完整说明
  1. 获取完整包,保留配套文件的目录结构。
  2. 按照原文准备所需工具、依赖与输入资料。
  3. 阅读对应使用步骤与输入输出说明,在自己的环境中验证结果。

使用提示摘自原文,配套文件保留来源版本;实际运行条件以各包说明为准。

正文

获取原文件

references/continuity-lock.md

目录

为什么识别锚点还不够

识别锚点是写给创作者读的事实;执行端读不到它,只读得到每条提示词自己的正文。同一件毛衣第一镜 织的是蓝色、第二镜变成红色,通常不是资产写错了,而是没有任何一条提示词把颜色带进去:视觉 设定写了,关键帧写了一半,运动提示词以为参考帧已经交代过就把重复描述删掉了。

参考图也补不上这一层。一张角色板只能约束它自己画到的部分;正在编织、只成形一半的毛衣,被手挡住 的道具,每镜重新构图的服装细节,都落在身份参考“默认不能控制”的一侧。

一致性锁补的就是这一段:把跨镜不变的那几个字固定下来,并要求它原样出现在每条受影响的提示词里。

什么值得上一把锁

三条同时成立才值得上锁:

  1. 这个可见事实在本集出现于两个以上镜头,或一个镜头加一张资产板;
  2. 观众能直接看出前后不一致;
  3. 它不随剧情改变——会变的是状态,状态不上锁。

典型:服装主色与形制、道具主色与材质、发型长度、伤口位置与形状、招牌或界面的形制配色。 不典型:情绪、姿势、左右手、镜头角度、时段光线、破损进度、持有人——这些是状态或镜头瞬态, 分别归 本集状态 与分镜。

craft_default: 一集里的锁通常是个位数。把每条识别锚点都升级成锁,每条提示词都会被同一串 名词短语撑满,反而挤掉本镜真正要执行的动作。

锁面怎么写

锁面 是要被逐字带进提示词正文的那一小段字,不是描述,也不是给人读的说明:

  • 锁面必须逐字出现在它管到的每一份可复制正文里。校验器会在三处查同一个字符串: 图片提示词正文、冻结关键帧提示词、视频提示词正文。

  • 图片与冻结关键帧使用 format/prompt_language,视频可能使用另选的 video_prompt_language。 语言不同时,优先使用确实适合各份正文的共同色值、型号或专名。 当前 镜头: 同时约束本镜首帧与视频正文,不能靠拆成两把锁分别约束两种语言。 没有合适共同词组时,在视觉设定中保留事实并报告此限制,暂不声明这把逐字锁; 不缩小事实实际出现的镜头范围来绕过检查,也不自行改变用户选择的正文语言。

  • 只保留最小可辨识名词短语,通常是「颜色 + 材质/形制 + 物体」,例如 pale blue chunky knit wool sweater;

  • 不含句号、动作、状态、数量、镜头信息和剧情;

  • 不写会随镜头变化的词(in her hands、half-finished、on the sofa);

  • 一个实体一把锁;同一实体的两种造型是两把锁,各写各的生效镜头。

比较时忽略大小写,换行按空格处理(可复制正文本来就渲染成一段,硬折行不影响匹配),其余字符 逐字比较。提示词可以在锁面前后接语法(she keeps knitting the pale blue chunky knit wool sweater),但不能改写锁面内部——少一个 stand-collar、多一个逗号都算漂移。

还有两处刻意不算数,因为它们看起来命中、实际并没有把事实写进画面:

  • 粘在词上的匹配不算。锁面首尾是字母数字时,紧挨着的字母数字或连字符会让它落空: chipped white enamel mug 不被 unchipped white enamel mug 满足, pale blue knit 不被 pale blue knitwear-print fleece 满足。锁面要能作为一个完整的词组读出来。
  • 负面提示词里的匹配不算。写在 no/not/without/avoid 或 不要/不能/没有/避免 之后的锁面说的是「不要出现它」,正好与锁的目的相反;..., no pale blue chunky knit wool sweater 不能作为锁面在场的证据。锁面必须出现在描述画面内容的正文里。 「粘在词上」只对 ASCII 词生效——中文本来不分词,织着浅蓝色粗棒针毛线 正常命中。

语法

写在 视觉设定.md 对应资产条目下,与识别锚点并列:

## 道具 · 织了一半的毛衣

- 识别锚点:浅蓝色粗棒针手织毛线,竹制棒针两根,衣身只织到胸口。
- 本集状态:SC002 起衣身加长约一掌;颜色与针法不变。
- 连续性锁:LOCK-KNIT《织了一半的毛衣》(镜头:全集;图片提示词项:IMG-PROP-KNIT)· 锁面:pale blue chunky knit wool sweater
  • 列表记号写 -、* 还是 +,缩进几格,都不影响识别;一条看起来像锁却写不完整的行会被 报成语法错误,不会被悄悄跳过——锁不能变成空转;
  • LOCK-...:本集唯一稳定 ID,与 IMG-...、REF-...、SHOT-... 互不混用;
  • 《中文名》:给创作者读的名称,必须含中文;
  • 镜头::全集,或 、 分隔的 SHOT-... 列表;两者不能混写;
  • 图片提示词项::可选,、 分隔的 IMG-... 列表,整段省略即表示不约束图片提示词;
  • 锁面::被逐字带走的那段字,写在行尾。

谁负责把锁面带走

文档 义务
图片提示词.md 被点名的 IMG-... 可复制正文含锁面,让参考图本身就是对的
分镜.md 生效镜头的冻结关键帧提示词含锁面
视频提示词.md 对应 MOTION-... 可复制正文含锁面

structural_invariant CON-07: 锁面在生效范围内不得以“参考帧已经交代过”为由删除。图生视频 删掉重复的静态描述是常规做法,但锁面是这条常规做法写明的例外——它正是为了挡住跨镜漂移才存在。

状态变化不进锁面:毛衣越织越长写在 本集状态,颜色和针法写在锁面。两者同时存在时,提示词自己 写长度,锁面负责颜色和针法。

反例

  • 锁面:蓝色毛衣——提示词正文是英文时永远匹配不上,且“蓝色”分不出浅蓝和藏青;
  • 锁面:a pale blue sweater that she has been knitting since the first scene——含剧情和时态, 下一镜必须改写它,锁当场失效;
  • 锁面:high quality, detailed——不是可辨识事实,锁住了也证明不了一致;
  • 只把锁的 镜头 范围写到「文字已经对的那几镜」——范围要按这个事实实际出现在哪几镜来写, 按已经写对的地方来写,等于把校验器指向没有风险的位置;
  • 把 镜头:全集 用在只出现两镜的道具上——其余镜头会被迫写入与本镜无关的名词。

校验

python3 <core 技能目录>/scripts/creator_markdown_check.py 剧集/<EP> --project-root .

它只机械核对语法、范围可解析,以及锁面是否真的出现在被点名的正文里。该不该上这把锁、锁面写得 准不准,仍由创作者和审查判断。

CONTACT HAONAN

联系haonan

医疗 AI · 产品与独立开发

刘浩南

关注医疗 AI 从 demo 到真实落地,聚焦产品化、商业化与院内工作流效率提升。

12年医疗产研经验,大湾区头部医疗AI公司前产品总监,独立开发者

医疗 AI 产品化医疗 AI 商业化院内工作流效率
刘浩南的微信联系二维码
微信扫一扫,联系 haonan