Popiai-skill仓库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

5.3 KiB

美术风格

目标

在人设图和分镜图生成之前,确定 MV 的整体美术风格,为后续视觉生成提供统一的风格基准。

内置风格预设

内置风格的预览图首次预览时由 scripts/download_style_presets.py 自动下载到 .mv/{song_name}/{theme}/style_cache/{style}/ 本地目录,后续直接复用本地缓存。下游 art_style.md参考图: 字段统一记录本地路径,确保生图工具的 image_paths 可直接读取。

目录 风格 说明
cinematic/ 电影质感写实 35mm胶片颗粒、暖琥珀色调、自然光、宽银幕
oil-painting/ 油画风格 厚重笔触、印象派色彩、painterly 质感
noir-illustration/ 黑色插画 高对比剪影、图像小说风、琥珀色点缀

流程

调用 MCP 工具 preview_and_collect_feedback 启动美术风格选择页面:

  • script: .opencode/skills/mv-creator/scripts/render_preview.py
  • args: [".mv/{song_name}/{theme}", "--type", "art_style", "--lang", "{lang}"]
  • feedback_path: .mv/{song_name}/{theme}/feedback.md

页面是一个交互式选择界面,包含:

  • 内置风格展示区:脚本首次启动时通过 download_style_presets.py 把内置风格预设图缓存到 .mv/{song_name}/{theme}/style_cache/{style}/,按分类展示,附风格关键词标签
  • 自定义风格区:允许输入 风格描述文字、上传 1 张 自定义参考图,或两者兼用(上传后保存到项目 style_references/ 目录)
  • 选择提交区:用户选定风格方向后提交

工具返回反馈内容后:

  • 选择内置预设 → 直接结合预设信息生成 art_style.md
  • 选择自定义风格 → 根据用户提供的内容生成 art_style.md
    • 仅文字描述 → 基于描述提取风格关键词,生成 art_style.md
    • 仅参考图 → 用 read_media MCP 工具分析参考图的美术风格特征(线条、色彩、构图、质感等),再基于分析结果生成
    • 文字 + 参考图 → 结合文字描述和参考图分析结果,综合生成

确保参考图可用art_style.md参考图: 列表必须包含至少一张图片。 如果用户选择的是纯文本自定义风格(无内置预设图、无上传参考图),则在生成 art_style.md 之前,先用 Midjourney 根据风格关键词生成一张风格参考图,保存到 style_references/ 目录,并写入 参考图: 列表。这确保后续人设图和分镜图生成阶段始终有可用的风格参考图。此处 MJ 生成的四宫格不需要裁切,仅需一张完整图作为风格参考即可。

生成的 art_style.md 记录:

  • 风格名称和描述
  • 选定的参考图路径(至少一张
  • 色调、光影、质感等关键词
  • 适用的生图模型推荐

风格 JSON 提取art_style.md 生成后,必须从参考图中提取结构化的风格 JSON。调用 read_media MCP 工具,传入参考图路径和以下提示词:

请以专业的艺术品鉴观角,深度分析这张图片的视觉风格。请忽略画面具体内容(比如人物、剧情),色彩风格、色彩调色板(hex代码)、构图风格、纹理质感、材质效果、线条风格、艺术风格关键词。请将分析结果输出为一段精简的 JSON 格式或描述,不要任何解读,就只要 JSON 结构。

将返回的 JSON 结果写入 art_style.md风格JSON: 字段中。此 JSON 将在后续人设图、背景图和关键物件图生成时作为风格描述注入提示词,替代直接传入参考图。

输出格式

完整格式示例见 references/art-style-example.md(非中文用户参考 references/art-style-example-en.md)。关键要点:

  • 首行 美术风格: + 风格名称
  • 包含字段:风格描述:关键词:色调:光影:推荐生图模型:参考图:风格JSON:
  • 关键词使用英文,用于后续生图 prompt
  • 参考图路径相对项目目录,每行一个
  • 风格JSON 为 read_media 分析参考图返回的结构化风格数据

文件存储

./.mv/{song_name}/{theme}/art_style.md                     # 美术风格说明
./.mv/{song_name}/{theme}/style_cache/                     # 内置风格预设 CDN 缓存(首次预览自动下载)
./.mv/{song_name}/{theme}/style_references/                # 用户上传的参考图(如有)

风格路由

美术风格确定后,判断风格是否属于写实类,决定后续工作流:

写实类判定:以下情况视为写实风格:

  • 用户选择了内置预设「电影质感写实(cinematic)」
  • 用户自定义风格的描述或关键词偏向写实(如包含 photorealistic / realistic / cinematic / 写实 / 真人 / 实拍 等特征)

路由规则

  • 写实风格 → 停止 mv-creator 主流程,告知用户写实风格将使用写实分支流程(支持口型同步等写实 MV 能力)。读取 phases/realistic-pipeline.md,从 STEP 0 开始执行,将已有的音频文件路径和歌词数据(.mv/{song_name}/lyric.md)传递过去,跳过已完成的音频获取和歌词提取步骤
  • 非写实风格(油画、插画、动画、自定义非写实等) → 继续 mv-creator 的下一阶段(脚本生成)