Hatch Pet 不是简单地“让 AI 画一张小动物图”。它是一套把角色概念变成可运行桌面宠物的制作流程:先确定宠物长什么样,再为它做出一组固定动作,最后把这些动作整理成应用能读取的动画文件。
对没有 AI 和编程基础的人,可以把它理解成一个小型动画制片流程:AI 负责画角色和动作,流程脚本负责裁切、排版、检查和打包,人负责判断这个宠物是不是同一个角色、动作有没有问题。
可以参考这个 demo repo:emma-millstein-codex-pet。它适合作为理解最终宠物包形态的示例。
桌面宠物不是一张普通图片。它要在应用里不断播放不同状态,比如待机、奔跑、挥手、跳跃、失败、等待和审阅。为了让应用稳定播放,所有动作都必须放进同一张标准动画图里。
这张图可以想成一张九行八列的透明格子表:
每一行 = 一种动作状态每一格 = 这个动作的一帧应用播放动画时,不是理解“这是一只鸭子”或“它在跑步”,而是按固定位置读取这些格子。所以流程的重点不是让每张图都漂亮,而是让每一格都干净、对齐、透明,并且看起来像同一只宠物。
1. 先确定宠物身份
Section titled “1. 先确定宠物身份”开始时需要确定三个东西:宠物名字、角色描述、参考图片或文字概念。
如果用户没有提供名字,流程会根据角色特点推断一个简短名字。名字不只是展示文本,也会影响最终保存目录。描述则是给 AI 和后续检查用的身份锚点,例如“短腿、圆脑袋、深色描边、绿色小芽”等。
这一步的关键不是写得华丽,而是把宠物最不能变的特征说清楚:外形、颜色、表情、道具、身体比例和整体风格。
2. 生成主视觉
Section titled “2. 生成主视觉”主视觉是这个宠物的“身份证照片”。后面所有动作都要参考它,不能每一行都重新设计一个相似但不同的角色。
即使用户一开始给了参考图,流程也会先生成一张符合 Codex 桌面宠物风格的主视觉。这个风格偏小型像素风:轮廓清楚、身体紧凑、表情简单、颜色有限、细节不要太复杂。
主视觉通过后,才进入动作制作。否则后面生成越多,返工成本越高。
3. 逐行动作生成
Section titled “3. 逐行动作生成”宠物动作不是一次性生成整张大图,而是按行生成。每一行对应一种状态,例如:
| 动作 | 普通理解 |
|---|---|
idle | 安静待机 |
running-right | 向右跑 |
running-left | 向左跑 |
running | 通用运行状态 |
waiting | 等待用户处理 |
failed | 出错或失败 |
review | 等待用户查看结果 |
jumping | 跳跃 |
waving | 挥手 |
流程会优先做 idle 和 running-right,因为这两行最容易看出角色是否稳定。若 running-right 左右翻转后仍然合理,running-left 可以由它镜像得到;如果角色有单边道具、文字、特殊花纹或方向性姿势,就必须重新生成左跑动作。
动作生成时有一个重要规则:不要加入漂浮特效。比如挥手不要画波浪线,跑步不要画速度线或灰尘,跳跃不要画地面影子。桌面宠物需要的是清晰角色动作,不是漫画效果。
4. 让多个助手并行做动作
Section titled “4. 让多个助手并行做动作”在完整制作里,主流程会负责主视觉和最终打包,动作行则交给多个子助手并行生成。普通读者可以把它理解成“一个导演,多个动画师”。
导演负责决定标准、保存记录和最终验收;每个动画师只负责一行动作,不能改总目录、不能擅自打包,也不能用程序自己画假动作。这样可以加快制作,同时避免多人同时改同一份文件造成混乱。
5. 自动整理和检查
Section titled “5. 自动整理和检查”动作图生成后,流程会把它们整理成标准尺寸:
单格:192 x 208总图:1536 x 1872整理完成后会生成几类检查材料:
| 文件 | 用途 |
|---|---|
spritesheet.webp | 应用最终使用的动画图 |
pet.json | 宠物名称、描述和动画配置 |
contact-sheet.png | 方便人一眼检查所有动作的总览图 |
validation.json | 程序检查结果 |
videos/*.mp4 | 每个动作的预览视频 |
程序检查只能确认尺寸、透明度、格子是否为空等硬规则。它不能真正判断“这还是不是同一只宠物”。所以最终一定要看总览图和预览视频。
6. 发现问题只修出错的动作
Section titled “6. 发现问题只修出错的动作”如果某一行动作失败,流程不会重做整个宠物,而是只重做那一行。常见失败包括:
- 角色突然换了物种或身体比例。
- 脸、花纹、颜色或道具和主视觉不一致。
- 背景没有被清理干净。
- 动作跨进了旁边格子。
- 身体被裁掉。
- 出现速度线、灰尘、漂浮星星、影子或其他不适合透明动画的效果。
这种局部修复方式更稳定,也更节省生成成本。
普通用户如何验收
Section titled “普通用户如何验收”验收时不需要懂代码,只要按下面的问题看图:
- 每一行动作看起来是不是同一只宠物?
- 宠物有没有被裁掉,或者跑到格子外?
- 背景是不是透明或容易被清理,而不是白底、黑底、网格底?
- 有没有多余的字、符号、波浪线、速度线、灰尘、影子或漂浮装饰?
- 动作循环是否自然,不会突然闪成另一个造型?
- 最终是否同时有
pet.json和spritesheet.webp?
如果这些问题都通过,这个宠物才算真正“孵化完成”。