- 人工智能
- 大模型
- AI 应用
- AI Agent
- 媒体生成
- 后端
- 桌面应用
【免费下载链接】Toonflow-app
Toonflow 是开源一站式 AI 短剧创作工具,将小说、剧本快速转化为动画短剧。集成 AI 编剧、智能分镜、角色与视频生成,跨平台桌面端轻量部署,助力创作者低成本批量产出视觉内容。Toonflow is an open-source AI tool that turns stories and scripts into animated short dramas. Features AI scriptwriting, storyboarding, character and video generation. A cross-platform desktop app for efficient content creation.
90年代复古日系动画风格是 Toonflow 内置的 2D 美术风格之一,其衍生资产生成约束手册(data/skills/art_skills/2D_90s_japanese_anime/art_prompt/art_scene_derivative.md)定义了"同一场景、多视觉状态"的完整衍生规范。本文围绕该手册,系统讲解景别、时段、天候、角度四类变体的定义、衍生规则、统一提示词模板与十条必守/八条严禁约束,并结合仓库源码说明其在"执行层 Agent 衍生资产分析与写入"流程中的实际落地方式,帮助读者在 Toonflow 中正确配置与复用自己的场景衍生资产。
一、场景衍生资产在 Toonflow 中的定位
Toonflow 将"场景"视为短剧生产的核心资产类型之一。在项目工作区数据模型(src/agents/productionAgent/tools.ts)中,资产被建模为:
export const assetItemSchema = z.object({ id: z.number().describe("资产唯一标识"), name: z.string().describe("资产名称"), type: z.enum(["role", "tool", "scene", "clip"]).describe("资产类型"), prompt: z.string().describe("生成提示词"), desc: z.string().describe("资产描述"), derive: z.array(deriveAssetSchema).describe("衍生资产列表"), });其中derive数组存放"衍生资产"——即父资产(基础场景)的视觉状态变体。衍生资产字段定义如下(同上文件):
const deriveAssetSchema = z.object({ id: z.number().describe("衍生资产ID,如果新增则为空"), assetsId: z.number().describe("关联的资产ID"), prompt: z.string().describe("生成提示词"), name: z.string().describe("衍生资产名称"), desc: z.string().describe("衍生资产描述"), src: z.string().nullable().describe("衍生资产资源路径"), state: z.enum(["未生成", "生成中", "已完成", "生成失败"]).describe("衍生资产生成状态"), type: z.enum(["role", "tool", "scene", "clip"]).describe("衍生资产类型"), });关键语义(见 data/skills/production_execution_derive_assets.md):
核心原则:derive 是父资产的视觉状态变体("{父资产名}·{状态名}"),不是独立物件,也不是为了某个镜头临时拆出的局部特写。
对场景资产而言:
- 场景基准态:场景父资产默认即为该场景的基础时段视图,由 art_scene.md 生成;
- 时间变体类衍生:按对应风格的
art_scene_derivative.md以"参考主视图 + 目标时段"方式落地。
提取范围上,场景只提取「时间变体」——同一场景在不同时段下的整体光照/色调/氛围变化(如日景→夜景、黄昏、清晨),同一场景可有多个时段变体,各自独立;角度、天候、破坏等其它变化在执行层"本阶段不提取",而是在衍生图提示词阶段按需注入(见 production_execution_derive_assets.md)。
写入动作通过add_deriveAsset工具完成,其底层实现在 src/agents/productionAgent/tools.ts:先按assetsId查父资产,取其type(场景即scene)作为衍生类型,再向o_assets表插入/更新记录并同步o_scriptAssets关联,最后通过 socket 广播addDeriveAsset事件刷新前端工作区。值得注意的是,该实现对 LLM 偶尔传入的"null"字符串做了容错归一(src/agents/productionAgent/tools.ts#L126-L129),新增衍生时id填null即可。
二、衍生五大原则:变化中的一致性锚点
手册开篇即给出衍生必须遵守的五大原则,它们是所有变体衍生的"一致性锚点":
| 原则 | 内容 | 作用 |
|---|---|---|
| 空间一致 | 建筑结构/布局/材质在所有变体中保持一致 | 保证变体可被识别为"同一场景" |
| 景别驱动 | 同一场景通过不同景别展示不同叙事功能 | 景别是叙事工具而非简单缩放 |
| 时段切换 | 同一空间在不同时间段呈现不同光影氛围 | 低成本营造时间流逝感 |
| 天候变化 | 同一空间在不同天气下呈现不同情绪 | 天候是情绪的外化手段 |
| 90年代为锚 | 所有变体必须保持90年代复古风格,拒绝现代CG/3D渲染 | 风格红线,贯穿全部变体 |
这五条原则与基础场景手册 art_scene.md 的"90年代为锚"美学原则一脉相承:手绘线条(流畅线条、块面阴影)与电影感光影(柔和暖光、体积光)是所有衍生变体共享的风格基因。
三、景别变体:同一场景的叙事分级
景别定义
| 景别 | 范围 | 叙事功能 | 提示词 |
|---|---|---|---|
| 大全景 | 场景全貌 + 周围环境 | 建立空间感、定位 | extreme wide shot |
| 全景 | 场景完整呈现 | 展示空间结构 | wide shot |
| 中景 | 场景局部区域 | 聚焦功能区 | medium shot |
| 近景 | 场景细部 | 材质/氛围道具特写 | close shot |
| 特写 | 极局部细节 | 材质纹理/关键道具 | extreme closeup |
景别衍生规范
| 从基准图衍生 | 保持不变 | 允许变化 |
|---|---|---|
| 大全景 → 全景 | 建筑外观、整体布局 | 视角收窄、前景增加 |
| 全景 → 中景 | 材质、色调、光线 | 裁切聚焦、景深变化 |
| 中景 → 近景 | 材质、色调 | 景深浅、背景虚化 |
| 近景 → 特写 | 材质纹理 | 极浅景深、微距感 |
从规范可以看出景别衍生的核心逻辑:越往近景走,越少改动全局属性,越强调景深与裁切。全景级只动"视角范围",中景才开始引入"景深变化",近景/特写则锁定材质纹理不变。这保证了从"空间定位"到"细节呈现"的递进关系始终建立在同一个物理场景之上。
四、时段变体:光影即时间
时段定义
| 时段 | 视觉特征 | 提示词 |
|---|---|---|
| 清晨 | 薄雾柔光、色调偏冷 | 晨光、清晨薄雾 |
| 正午 | 明亮、阴影短、色彩鲜明 | 正午阳光、光线明亮 |
| 黄昏 | 金色色调、长影、天空渐变 | 黄昏、golden hour |
| 夜间(月光) | 冷蓝色调、幽静清冷 | 月光、月夜 |
| 夜间(灯火) | 暖黄点缀、明暗对比 | 夜晚、灯火 |
时段衍生规范
| 从基准时段衍生 | 保持不变 | 变化项 |
|---|---|---|
| 日间 → 黄昏 | 建筑/布局/材质 | 天空色调暖化、影子拉长 |
| 日间 → 夜间 | 建筑/布局/材质 | 整体变暗、增加灯火/月色 |
| 室内日间 → 室内夜间 | 空间结构、家具 | 整体色调暖化、增加光源 |
时段变体是执行层提取的唯一场景衍生方向,因为它是"稳定、可复用、资产级"的视觉状态:同一间教室在"日景/黄昏/夜景"三个时段下需要反复出现在多个分镜中,且无法仅凭分镜 prompt 稳定控制,因此必须以衍生资产形式固化。
时段变体与全局色彩盘(prefix.md)中的"情绪色盘"直接呼应:黄昏浪漫对应"琥珀暖 C7 + 暖橙 C10 + 樱花粉 C2",夜晚月色对应"天空蓝 C3 + 淡紫 C6 + 暖黄 C1",回忆闪回对应"暖黄 C1 + 淡紫 C6 + 高级灰 C5"。生成时段变体时可按此色盘对齐导演情绪意图。
五、天候变体:情绪外化的天气层
天候定义
| 天候 | 视觉特征 | 提示词 |
|---|---|---|
| 晴天 | 明亮、阴影清晰 | 晴天、阳光明媚 |
| 阴天 | 光线均匀、无硬影 | 阴天、柔和光线 |
| 薄雾 | 能见度降低、空气朦胧 | 薄雾、雾气缭绕 |
| 细雨 | 水珠、湿润反光 | 细雨、雨丝 |
| 飞雪 | 白色覆盖、雪花飘落 | 飞雪、雪花 |
天候衍生规范
| 从基准天候衍生 | 保持不变 | 变化项 |
|---|---|---|
| 晴 → 薄雾 | 建筑/布局 | 增加雾气层、远景模糊 |
| 晴 → 细雨 | 建筑/布局 | 增加雨丝、地面反光 |
| 晴 → 飞雪 | 建筑/布局 | 增加积雪、雪花 |
| 植被需随天候逻辑适配 | — | 雨中植物湿润、雪中植物挂霜 |
天候衍生的关键是"植被/材质表面随天候适配":雨天植物湿润反光、雪天植物挂霜,这与基础场景手册的季节色调映射(春=粉色+嫩绿、夏=碧绿+蓝色、秋=金黄+橙红、冬=白色+灰色,见 art_scene.md)相互制约——天候不能与季节矛盾(严禁项 X2)。例如冬季场景衍生"细雨"就与雪季逻辑冲突,应避免。
六、角度变体:视点切换与一致性重算
角度定义
衍生图相对参考图,可在以下角度维度上进行切换。调用方会传入参考图 + 目标角度描述,本文件只定义角度语汇与一致性约束。
| 角度 | 描述 | 提示词 |
|---|---|---|
| 正面/前视 | 与参考图相比,视线朝向场景正面 | front view、eye level |
| 侧面(左/右) | 朝场景左/右侧 90° 平视 | left side view / right side view |
| 背面/后视 | 朝场景背面 180° | back view |
| 俯视 | 高位俯瞰,呈现整体布局 | high angle、bird's eye view |
| 仰视 | 低位仰望,强调高大主体 | low angle、worm's eye view |
| 近景推进 | 同方向但镜头推进,聚焦局部 | push-in、closer angle |
| 自由角度 | 调用方自定义的任意角度描述 | 按{目标角度}注入 |
角度衍生规范
| 项目 | 约束 |
|---|---|
| 参考一致性 | 建筑结构/布局/材质/色调/光线/季节/天候必须与参考图一致 |
| 视点 | 同一场景中心点,仅角度切换;视线高度可随角度调整 |
| 光照逻辑 | 参考图光源方向不变,角度切换后光影投射方向需同步重算(保持物理合理) |
| 布局 | 单画面(非拼图、非多视图、非分屏) |
| 人物 | 严禁出现任何人物、人影、人体轮廓 |
| 画面比例 | 默认 16:9(或按调用方设定) |
角度变体是四类变体中唯一"由调用方传入目标角度描述"的维度(自由角度按{目标角度}注入占位符),其余景别/时段/天候均由 Agent 根据用户信息自行判断。角度切换时"光源方向不变、光影投射方向重算"是一条物理合理性要求——同一场景转角度后影子应落在正确方向,这是避免"多视图拼接感"的关键。
七、统一提示词模板:单模板覆盖多维度
手册明确:"无需为每种变体单独生成模板",所有变体共用一份提示词模板,未提及的维度对应字段留空省略即可。完整模板如下:
90年代复古日系动画风格衍生场景图,基于参考图, 90s anime style,手绘平涂上色,柔和暖色调,精细流畅线条,电影感光影, scene derivative design sheet,environment concept art,no people,no characters,no human figures, 保持场景空间结构一致, {目标角度(如有)},{景别视角(如有)},{时段描述(如有)},{天候描述(如有)}, {前景},{中景},{后景}, {色调描述},{景深描述(如有)},{天空色调变化(如有)},{氛围调整(如有)}, {天候视觉特征(如有)},{材质表面变化(如有)},{植被适配描述(如有)}, 线条流畅、块面阴影、使用痕迹, 柔和电影光、背景光晕、自然光照, 单画面构图,与参考图保持建筑结构/材质/色调/光线一致,仅按目标角度切换视点, 画面中无任何人物 图中不要有任何文字模板的占位符设计可以按四个维度拆解理解:
| 占位符组 | 对应维度 | 说明 |
|---|---|---|
{目标角度}、{景别视角} | 角度 / 景别 | 未指定则省略 |
{时段描述}、{天空色调变化} | 时段 | 配合"天空色调与氛围"必守规则 R2 |
{天候描述}、{天候视觉特征}、{植被适配描述} | 天候 | 配合"植被/材质表面适配"必守规则 R3 |
{前景}/{中景}/{后景}、{色调描述}、{景深描述}、{氛围调整}、{材质表面变化} | 通用画面 | 保持基础场景手册要求的层次纵深 |
同时模板内置了{目标角度}语汇与 art_scene.md 的场景主视图模板(hero shot、eye level、balanced composition)的衔接——衍生图以"参考主视图 + 目标角度"为输入,本质上是img2img 视角下的场景转绘。这与 generateAssets.ts 中图片生成的实现方式吻合:请求体支持可选的base64参考图字段,调用u.Ai.Image(model).run()时通过referenceList: [{ type: "image", base64 }]传入参考图,并按aspectRatio: "16:9"出图——与手册默认 16:9 的画面比例约定一致。
八、约束规则全集:必守 R1–R10 与严禁 X1–X8
必守(R)
| 编号 | 规则 |
|---|---|
| R1 | 场景空间结构在所有变体中保持一致 |
| R2 | 时段变体必须调整天空色调与氛围 |
| R3 | 天候变体必须适配植被/材质表面 |
| R4 | 衍生图必须为「单画面」,不得拼接多视图/网格/分屏 |
| R5 | 衍生图必须与参考图保持建筑结构/材质/色调/光线一致,仅按指定角度切换视点 |
| R6 | 场景图中严禁出现任何人物 |
| R7 | 根据用户提供的信息自行判断变化维度(角度/景别/时段/天候),未提及维度留空省略 |
| R8 | 必须包含90年代关键词(90s anime style / hand-drawn / warm tone) |
| R9 | 必须包含线条特征(流畅线条、块面阴影 至少一项) |
| R10 | 材质必须带有使用痕迹,禁止全新无瑕的"CG 感" |
严禁(X)
| 编号 | 严禁 |
|---|---|
| X1 | 变体间建筑结构/布局不一致 |
| X2 | 天候与季节矛盾 |
| X3 | 变体间材质/风格突变 |
| X4 | 出现任何人物、人影、人体剪影 |
| X5 | 画面被拼接成多视图/网格/分屏布局 |
| X6 | 3D 渲染/CG 动画/现代风格质感 |
| X7 | 材质过于干净完美、无任何使用痕迹 |
| X8 | 光照过于均匀平坦、无柔和电影光 |
这些规则与 prefix.md 定义的全局硬约束一致(严禁现代日系/CG/3D、严禁高饱和荧光色等),并额外强化了"变体间一致性"(X1/X3)与"单画面"(X5)两条场景衍生专属红线。值得注意:R8/R9/R10 与角色衍生手册 art_character_derivative.md 中 R2(线条流畅+结构清晰)、质感不降原则等共享同一套 90 年代美学基因,说明整套美术技能在风格锚点上高度统一。
九、在实际生产链路中如何使用
场景衍生资产在 Toonflow 的生产 Agent 链路中按如下步骤落地:
- 衍生资产分析与写入:执行层 Agent 依据 production_execution_derive_assets.md 读取
get_flowData("script")与get_flowData("assets"),仅对"有明显时段切换需求"的场景调用add_deriveAsset写入衍生(场景只提取时间变体,每资产 1~5 条,宁缺勿滥); - 衍生资产图片生成:执行层 Agent 按 production_execution_generate_assets.md 调用
generate_assets_images({ ids })批量生成图片(异步发起即返回),仅对"有衍生状态且尚未生成"的资产发起; - 提示词组装:Agent 按本手册的"统一模板 + 占位符裁剪"方式输出衍生图提示词,并可通过 getArtPrompt.ts 工具按风格目录递归加载
prefix.md+art_scene_derivative.md等美术约束文件(getArtPrompt("2D_90s_japanese_anime", "art_skills", "art_scene_derivative")即可拿到含全局前缀的完整约束文本); - 技能激活注入:衍生子 Agent 通过
activate_skill/read_skill_file工具加载风格技能(实现见 skillsTools.ts),主技能内容会剔除 frontmatter 后以<skill_content>形式注入上下文,资源文件路径被限制在技能目录内(防路径穿越)。
对希望复用自己的美术风格的开发者,可直接仿照data/skills/art_skills/2D_90s_japanese_anime/目录结构(prefix.md+art_prompt/+driector_skills/),提供同名art_scene_derivative.md约束手册,即可让执行层 Agent 以同样的机制生成该风格下的场景衍生资产。
十、使用要点速查
- 判断变化维度:角度/景别/时段/天候四类变体由 Agent 根据用户信息自行判断启用,未提及维度在模板中留空省略,不单独生成变体模板;
- 时段是执行层的"唯一必提取项":执行层衍生提取阶段只写时间变体;角度/天候等变化在提示词阶段注入(详见 production_execution_derive_assets.md);
- 一致性优先于变化:所有变体共享"空间结构一致 + 单画面 + 无人 + 90年代锚定"的底线,变化只发生在允许的维度上;
- 画面比例默认 16:9:与 generateAssets.ts 中
aspectRatio: "16:9"的出图参数一致,可按调用方设定覆盖; - 禁止人物与文字:模板末尾固定携带"画面中无任何人物 / 图中不要有任何文字",与场景基础手册保持一致。
参考资源
- 本文主体:场景衍生约束手册 art_scene_derivative.md
- 场景基础手册(基准态生成):art_scene.md
- 全局美学基线(色彩盘/色温/硬约束):prefix.md
- 风格总览:data/skills/art_skills/2D_90s_japanese_anime/README.md
- 执行层衍生提取规则:data/skills/production_execution_derive_assets.md
- 衍生资产生成工具实现:src/agents/productionAgent/tools.ts
- 技能加载机制:src/utils/agent/skillsTools.ts
- 美术提示词按风格读取工具:src/utils/getArtPrompt.ts
- 资产图片生成接口:src/routes/assetsGenerate/generateAssets.ts
- 人工智能
- 大模型
- AI 应用
- AI Agent
- 媒体生成
- 后端
- 桌面应用
【免费下载链接】Toonflow-app
Toonflow 是开源一站式 AI 短剧创作工具,将小说、剧本快速转化为动画短剧。集成 AI 编剧、智能分镜、角色与视频生成,跨平台桌面端轻量部署,助力创作者低成本批量产出视觉内容。Toonflow is an open-source AI tool that turns stories and scripts into animated short dramas. Features AI scriptwriting, storyboarding, character and video generation. A cross-platform desktop app for efficient content creation.
相关推荐
Toonflow 场景衍生资产生成手册:3D 动画渲染都市风格的景别 / 时段 / 天候 / 角度变体约束全解
Toonflow 场景衍生资产生成手册:3D 动画渲染都市风格的景别 / 时段 / 天候 / 角度变体约束全解 Toonflow 是开源一站式 AI 短剧创作工
人工智能大模型AI 应用AI Agent媒体生成后端桌面应用Toonflow 扁平风场景衍生资产生成实战:景别、时段、天候、角度四维变体约束体系
Toonflow 扁平风场景衍生资产生成实战:景别、时段、天候、角度四维变体约束体系 导读 在 Toonflow 的一站式 AI 短剧创作流程中,"场景衍生资产
人工智能大模型AI 应用AI Agent媒体生成后端桌面应用Toonflow 国风二次元场景衍生资产规范:景别、时段、天候与角度变体生成实战指南
Toonflow 国风二次元场景衍生资产规范:景别、时段、天候与角度变体生成实战指南 导读 本文聚焦 Toonflow 开源一站式 AI 短剧创作工具中「2D
人工智能大模型AI 应用AI Agent媒体生成后端桌面应用
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考