🌻 设计文档小农场 · 野花笔记
← 全部文档/野花笔记/美术

素材总表

现行 #美术#素材#索引#动画 docs/野花笔记/素材总表.md
这一页解决一个问题:**东西在哪、怎么来的、验过没有**

素材散在四个目录里、由五个脚本生成。这一页把它们收在一起, 换素材或查一个图是怎么出的时候,从这里进。

生成模型:gpt-image-2(图生图,/v1/images/edits)。 参考图:动物用参考图拆出来的那只兔子,植物和场景元素用元素拆离表。 画风块只写一次、全批共用(tools/art/gen_batch.py 的 STYLE 常量)。


一、动物(6 种,全部带动画)#

每个都是一行 N 个连续姿态一次生成,再按二维连通域切件 (不是等分格子 —— 见 docs/野花笔记/动画与场景设计.md 第一节)。

动画 帧数 fps 精灵表 验收
兔子奔跑 8 12 _art/anim2/rabbit-run-sheet.webp ✓ 透明底 / 无溢出
兔子跳跃 6 10 _art/anim2/rabbit-hop-sheet.webp ✓ 透明底 / 无溢出
麻雀 6 10 _art/anim2/sparrow-sheet.webp ✓ 透明底 / 无溢出
萤火虫 6 7 _art/anim2/firefly-sheet.webp ✓ 透明底 / 无溢出
甲虫 6 9 _art/anim2/beetle-sheet.webp ✓ 透明底 / 无溢出
蝴蝶 6 13 _art/anim2/butterfly-sheet.webp ✓ 透明底 / 无溢出

立绘(兔子形象定稿):

  • art/gen25/rabbit-v2-side.png 侧视(游戏用)
  • art/gen25/rabbit-v2-front.png 正面(手账 / 主界面用)
  • art/gen25/compare-rabbit-v2.png 与参考图兔子的三栏对照

跳跃帧已重出过一版:第一版背景里带杂草,现在只有兔子(提示词里用 ★★ 显式禁止草/地面/影子/速度线)。

二、植物(30 株,5 株带摇摆)#

5 条风景带 × 6 株。原稿在 art/plants2/raw-<带>.png, 切好的单株在 art/plants2/<带>-1..6.png,总览板 art/plants2/board.png。

风景带 植物形态
苔原草坡 低矮垫状植物、细硬短草、微小高山花、灰色地衣、小型莎草
石楠台地 石楠状灌木(密生小铃花)、低矮木质茎、细针叶
溪谷林地 蕨类、阔叶林下植物、苔藓团、细高的耐荫草
砾石滩 微小景天、匍匐垫状植物、细弱草丛、灰叶小植物
高地野花田 高杆野花、种子头、三叶草、带刺蓟状植物、羽毛状草

摇摆动画 5 组(每条带挑 1 株,8 帧 7fps):_art/anim2/sway-<带>-sheet.webp

摇摆**不是生图**,是同一张图的连续变形

脚本 tools/art/plant_sway.py:绕根部旋转 + 按行水平位移 + 相位滞后。 帧与帧只差一个显式参数,不存在形变。

方向验法:量每 10% 高度带的水平重心位移。底 10% 必须为 0.00 px(根部锁定), 位移随高度单调递增 —— 实测顶 10% 是 +7.7px、max +13.2px。

三、场景元素(36 件)#

6 类 × 6 个变体。原稿 art/props2/ 同目录,切好的单件 art/props2/<类>-1..6.png, 总览板 art/props2/board.png。

类别 6 个变体
石头 圆巨石 / 平板石 / 棱角中石 / 卵石堆 / 半埋长苔石 / 磨平踏石
树木 高窄针叶 / 圆阔叶 / 分层塔形 / 幼树苗 / 枯树 / 低矮灌木树
灌木 圆密灌丛 / 散枝矮丛 / 匍匐垫状 / 带小浆果 / 发白霜 / 带刺棘丛
草丛 高细草丛 / 短硬草簇 / 宽叶莎草 / 苔藓块 / 小蕨丛 / 匍匐地被
枯木 倒木带断枝 / 树桩 / 扭曲枯枝 / 小枝堆 / 空心木段 / 翻起根盘
远山 圆缓丘 / 尖脊 / 崖边 / 远处树线 / 缓坡 / 平顶台地
远山那一组是**故意更亮更淡**的

它是视差最远层,提示词要求 LIGHT hazy blue-grey, clearly LIGHTER than the other props。 摆进场景时还会再压一层透明度(0.55)。

四、背景与拼接场景#

整张背景(远景层,视差用)5 张,竖构图 1024×1536: art/bg2/<带>.png,拼接检查条 art/bg2/strip.png。

拼接场景 5 张,540×960:art/scene2/<带>.png

图层顺序:天空渐变 → 远山 → 中景树 → 近景灌木 → 地面 → 石头/枯木 → 前景草 → 角色

每层带自己那一档的透明度和明度衰减(远山 0.55 / 中景树 0.78 / 近景 1.0)。 景深用透明度+明度做,不用颜色做 —— 这样换配色时层次不会塌。

验收状态#

python3 tools/art/check_tone.py --scene art/bg2/*.png → 6/6 全部达标 (5 张背景 + 1 张拼接条)。

但背景的明度是**后处理调出来的**,不是生图一次命中

生图原始明度 0.374~0.481 全部偏暗,用分段 gamma + 降饱和拉到基准 0.601。 拼接场景(art/scene2/)还没跑过 check_tone.py —— 那是代码合成的, 口径要单独定,还没定。

五、脚本对应表#

脚本 干什么 输入 → 输出
tools/art/genimg.py 直连网关出图,支持传参考图 提示词 + 参考图 → PNG
tools/art/gen_batch.py 批量出动物 / 植物 / 背景,画风块只写一次 提示词表 → PNG
tools/art/gen_cut.py 抠底 + 二维连通域切件(网格分行列排序) 素材板 → 单件
tools/art/pose_sheet.py 姿态表 → 精灵表,连通域切件(跨格子也能整只切出) 姿态表 → RGBA 精灵表
tools/art/spritesheet.py 精灵表切片 + 对齐 + 动态 WebP(默认输出透明底) 精灵表 → anim 播放器用的图
tools/art/plant_sway.py 植物摇摆,连续变形不重新生图 单株 → 8 帧精灵表
tools/art/compose_scene.py 用元素拼竖屏场景 元素 + 带配置 → 540×960 场景
为什么 `image_gen` 工具不能干这些

① 它参数里没有"参考图",只能文生图,风格传不过去; ② 它不能按次指定模型(model 是全局配置,在 cordis.patch.yml)。 见 docs/工具与配置/生图模型配置.md。

六、还没做的#

别把这些当成已完成
  1. 素材还没接进运行时。 演示页 notes.html 里的场景仍然是代码画的几何图形, 这批生图素材目前只出现在文档的图片里。这是下一件该做的事。
  2. 30 种植物对不上 收集手册.md 的 30 种。 那 30 种是按玩法定的(含稀有度、花期、 功效),这一批是按风景带出的(每条带 6 种形态),两套编号不是一套。 要对齐得重新映射,还没做。
  3. 动物素材只过了视觉复核和边界检查,没过 check_sat.py / check_tone.py。
  4. 帧数偏少(8 帧 / 6 帧),要更顺需要 12~16 帧。
  5. 元素切件有轻微杂点,靠 min_area 过滤了一部分,没做逐张清理。
  6. 没有尺寸规范表。 每件素材的实际像素尺寸没登记,接进运行时之前要定。

MDEOF