下载 App
开发者日志 ③ · 兔子会跑了,然后我重写了整个美术管线
4 小时前6 浏览综合
戏:《涌现之野》| 单人 · TapTap 制造 · 目标双端(PC + Android)
覆盖区间:10.08 – 10.12(开发第 7–11 天)| 版本 1.0.22 → 1.0.53


【聚光灯 21 天】Day 7–11 —— 一只兔子,让我把美术路线推倒重来
上一期写到兔子第一次在真机上"活"过来,但那是用程序化绘图硬画出来的。这一期开头,我就把这整条路线推翻了。
原因不复杂:造型、朝向、动画三层在代码里缠在一起,每改一版造型就带崩一版朝向。返工到第六轮我才认清——这不是调参能救的,是结构问题。于是拍板转精灵图(Spritesheet),让美术管线一次把造型定死,渲染层只负责切图和动效。
一、离屏全是绿的,真机全是灰的
这是这五天里最贵的一课。
精灵图管线搭好,塔啦啦(我的 AI 协作伙伴)用离屏截图自检,八张全过、帧数对、清单里也有图。我兴冲冲宣布"终于正常了"。结果真机一跑——兔子只剩地上一个影子和一坨模糊像素。
前后查了三轮:坐标系、DPR、渲染上下文,全是嫌疑又全错。真凶藏在官方文档里:资源加载那行代码只查本地、不触发下载,而图片在真机端是按需拉取的,根本不会自己来。离屏环境因为整包同步,永远命中;真机永远等不到。同一段代码,两个世界。
修法是发现不在本地就主动发起下载,失败有界重试。顺带把包体从 20MB 压到了 5MB。
这件事让我立了条死规矩:交付验收只用真机 / 真实运行的截图,离屏截图只当自检工具,永远不能当交付证据。 之前"导演摆拍"的完美截图骗过了所有人,但骗不过真机。
二、兔子终于像兔子了(然后我发现比例全错了)
修好加载之后,兔子第一次在真机上正常显示。从最早的"跳蚤"算起,反反复复十个版本。
但真机紧接着又戳出两个问题。一个是动画:我之前把跳的频率从 2 跳/秒降到 1 跳/秒,却忘了同步改移动速度——兔子每跳要滑出两米多,"蹦一下滑一大段"。动画和运动的参数耦合断了,光修帧没用。另一个是移动端比例:手机截图里兔子显得特别大、世界特别空。查下来兔子尺寸是写死的逻辑像素,而玩家和场景跟着屏幕缩放——不是兔子大了,是世界小了。两处一起调,桌面和移动端的比例才统一到 1.4。
三、玩家角色换了个命题
这期还启动了玩家角色 DR-7。我给了张参考图,塔啦啦逐项对照策划案,查出六处硬冲突——参考图走的是改命题之前的旧方向(露脸机甲、大舱盖、机器人剪影),正好踩中之前连续五轮驳回的同一条死线。画得越精,命题错位越危险,因为"看起来很完成"会让错误规格更容易被通过。
最后拍板把角色命题回退成仿生人,顺手把叙事悬念补救了一下:锚点从"看不见脸"换成"看见脸、但眼睛不对劲"——瞳孔是均匀的青光而不是虹膜。露脸反而让"我是谁"每帧都在玩家眼前。
角色按 192px 画布、八方向 × 三动作(站立/走/跑)做了 192 帧。这里踩了个印象深的坑:几何校验全绿的待机帧,真机一看却是在原地走路——归一脚本只校验位置和尺寸,把"走路帧钉平"后数值全过,内容错误被完全掩盖。几何一致不等于内容正确。
四、一周之内,世界长出了天气和电
美术之外,这期最大的进展是第二张地图(湿地 + 烬野)的系统落地。天气五态(晴/阴/雨/暴风雨/雾)、风与气流柱、沿连通水面逐跳传导的电网、捕食者(蜥狼、电鳗蛙)、传送塔、弓和三系箭(普通/火/毒)、十二个兴趣点——八张卡全部交付,双端验收通过。
这部分最有"涌现"味:电网放电点燃邻水薪柴,火借风势蔓延,捕食者追猎改变生物分布——系统之间开始互相触发,而不是各演各的。
顺带把苔羊也做了八方向 × 六动作共 48 组帧动画,复用跳兔定型管线。羊比兔子还费积分——三十多次视频生成。
五、收口那天,我把"已写入文件"四个字废了
10.12 是 M2 收口日。四批构建连发,最后代码线八张卡全绿。
收口过程里有个小插曲值得记:前面两轮报告都写"清单文件已更新",我两次抽查都没命中。于是升级了汇报规矩——"已写入文件"不再采信,下次报告必须正文直接贴全表。追讨成本归零,核对成本也归零。其实我自己也犯过同样的错:有次要改的规格只在对话里说"已记下了",实际没调工具。账本上没有"我以为记过了"这个状态。
另外用户报"资源产出太少",我没有急着改数值,先做全表审计,结论是设计如此(储量小、稀缺材料刷新慢是终局压力),只定向微调了早期循环。先证明"少"是设计,再决定动不动它。



本期进展
- 美术路线从程序化绘图全面转向精灵图管线,跳兔 / 玩家角色 DR-7 / 苔羊全部接入八方向帧动画
- 修掉资源异步加载根因(离屏绿 ≠ 真机灰),包体 20MB → 5MB
- 校正动画参数耦合与移动端比例,桌面 / 移动端统一 1.4
- 第二张地图(湿地 + 烬野)八张系统卡全部交付并双端验收通过,M2 代码线 8/8 全绿
- 死亡动画、滑翔手感、合成 UI、资源辨识等收口项落地
- 版本推进:1.0.22 → 1.0.53
问题与风险
- 验收方法论仍依赖真机:离屏只能自检,最终结论必须真机 / 真实运行截图,耗时且占人力
- 参数耦合类 bug 隐蔽(改帧率忘改移速、精灵尺寸未接屏幕缩放),靠真机观感才暴露
- 美术资产大量依赖 AI 出图,单只动物数十次生成、积分消耗大,需控制档位
- 烬野内容、部分美术 / UI / 音乐线尚未补齐(属降级预案允许范围)
- Render.lua / Balance.lua 超过 2000 行,构建器提示需重构(非阻塞,后期处理)
下期计划
- 第三张地图(菌林 + 霜脊):孢子扩散 / 菌桥、冰冻结融化、新生物与种群级联
- DR-7 斜向待机帧重做(几何校验掩盖的内容错误,排在苔羊之后)
- 补齐素材使用声明等投稿硬性文档
- 火焰 / 烟雾粒子与音效三件套
- 提交前检查:debug 开关全部关闭











