3D 转像素画:完整指南
从九十年代初起,游戏就开始用 3D 模型渲染精灵。本指南介绍如何做才能让结果看起来像像素画,而不是一张缩小了的模糊渲染图。




手工绘制一个角色的八个方向,再加上行走、奔跑、攻击和死亡循环,帧数非常多。对小团队来说,这可能是游戏中最大的一项美术成本。用 3D 模型渲染这些帧,是解决这个问题的老办法。本指南介绍这一思路的由来、为什么可行、会出现什么问题,以及如何得到看起来像像素画、而不是缩小渲染图的精灵。
预渲染精灵简史
1994 年,Rare 在超级任天堂上推出了《大金刚国度》。它的角色和场景在 Silicon Graphics 工作站上建模和渲染,然后缩减为主机的小型精灵和有限的颜色。它在这台主机上看起来与众不同,也证明了 3D 管线可以为 2D 游戏供图。
在九十年代后期,预渲染精灵在 PC 上变得普遍。Diablo(1996)、Fallout 和 Fallout 2、StarCraft 以及 Age of Empires 都使用从 3D 渲染的单位和角色,而且往往包含许多方向,因为模型可以免费旋转,而手绘画面不行。
这项技术在 Dead Cells(2018)中以另一种形式回归。Motion Twin 在 3D 中制作角色动画,再渲染成小尺寸的像素画帧,并在 2018 年 Gamasutra(现 Game Developer)的文章「Art Design Deep Dive: Using a 3D pipeline for 2D animation in Dead Cells」中介绍了这一流程。目的与 1994 年时相同:让小团队不必逐帧绘制,也能获得流畅、一致的动画。
更多内容请阅读预渲染精灵。
为什么从 3D 渲染
有三个原因被反复提及。
- 任意方向。一旦有了模型,新增一个朝向只是多一台摄像机。四个、八个或十六个方向的设置工作量都一样。
- 动画一致。角色的比例在每一帧、每个朝向中都保持一致。手绘精灵会走样,骨架不会。
- 修改成本很低。修改盔甲颜色、精灵尺寸或调色板,然后重新渲染。如果是手绘的精灵表,后期改动就意味着重画几百帧。
代价是,普通渲染看起来并不像像素画。把平滑着色的渲染缩小,你会得到柔和的边缘、浑浊的渐变、数百种几乎相同的颜色,以及逐帧闪烁的像素。本指南的其余部分就是关于如何弥补这一差距。
是什么让它看起来像像素画
像素画与其说是低分辨率,不如说是掌控。每个像素都是一个决定。渲染会替你做出数以百万计你并没有要求的微小决定,所以要做的是把这些决定收回来。
统一的像素比例
游戏中的一切都应该使用同一种像素大小。如果树按一种比例绘制,而角色的细节是它的两倍,这种不协调会非常明显。像素画师把混用不同像素大小称为 mixels。在 3D 管线中,解决办法是统一的每米像素比例:两米高的骑士总是同样多的像素高,旁边的木箱也成比例。正因如此,在 Pixor 中请给摄像机设置固定的像素/米:默认情况下,每台摄像机会让精灵适应自己的尺寸。
固定的轴心点
如果角色的脚每帧落在不同的像素上,即使动画本身很好,精灵在游戏中也会抖动。轴心点通常位于双脚之间,应该在每一帧、每个朝向中都位于同一像素。Pixor 会在所有帧和朝向中把轴心点锁定在同一像素上。
有限的调色板与色阶
手绘精灵使用的颜色很少,并排成色阶:每种材质一小串由暗到亮的颜色。颜色少,形状在小尺寸下才清晰可辨。渲染图需要归约到一个调色板,而不仅仅是随机挑出更少的颜色。

色相偏移
好的色阶不只是越来越暗;色相也会随之变化,通常阴影偏冷、亮部偏暖。这就是色相偏移,也是像素画看起来像绘画而不是发灰的重要原因。
选择性描边与干净的线条
对某些风格来说,所有东西外面都画一圈黑线也无妨,但许多美术师会根据描边所包围的形状为它着色,阴影一侧更深,受光一侧更浅甚至省略。这就是 selout。线条应为一像素宽,不能有重复的「L」形拐角;剑刃和法杖等细长部件应保持为干净的一像素线条,而不是断断续续。详见描边。
没有孤立像素,没有闪烁
不属于任何形状的孤立像素看起来像噪点。在动画中,更糟的问题是闪烁:某个像素或线条出现一帧,下一帧又消失。渲染一直都会产生这两种问题,因为模型的微小变化就会让数值刚好越过或低于某个阈值。
不会意外产生抖动
抖动可以是一种刻意的风格。如果使用,图案应在模型移动时固定在表面上,而不是像纱门一样在表面上游动。
管线,一步一步来
下面是常见的流程,以及 Pixor 在每一步中的作用。
1. 模型
任何绑定或静态的模型都可以。Pixor 可以读取 glTF 和 GLB、FBX(包括从 Mixamo 下载的)、OBJ 以及 MagicaVoxel .vox 文件。形状清晰、材质分明的简单模型比非常精细的模型更适合做精灵;比一个像素还小的细节反正也会丢失。
2. 每个朝向一台摄像机
每个方向都是一台看向模型的摄像机。横版游戏只需要一个;俯视和等距游戏使用 4 或 8 个一圈。俯仰角和方向同样重要:侧视、四分之三视角、2:1 等距视角和俯视各适合不同的游戏。在 Pixor 中,每个朝向都是一台摄像机,可以 4、8 或 16 个一圈,也可以是你选择的任意角度。

3. G-buffer
不要直接渲染成品图像,而是渲染你需要的信息:每个像素的平涂颜色、表面朝向(法线)、到摄像机的距离(深度),以及它属于哪个部件或材质。这称为 G-buffer。之后的每一步都以它为基础,这正是其余步骤可控的原因。本页顶部的图片展示了宝箱的颜色、法线和深度,以及最终的精灵。
4. 分色带的光照
平滑的明暗变成几条平涂色带:亮部、中间调、阴影。像素画通常用两到四条。难点在于模型移动时保持色带稳定,让色带边缘不会在几乎没有转动的表面上来回跳动。Pixor 以 1 到 4 条色带上明暗,并让色带保持到表面明显转过去为止。

5. 线条
根据深度、法线和部件 ID,可以找出剪影、部件之间的内部边缘,以及表面折叠处的折痕。每一种都可以用不同方式绘制:深色、彩色,或者不画。Pixor 把剪影线、内部线和折痕线视为不同的种类,各有自己的选择性描边设置,以一像素宽且无 L 形拐角的方式绘制,并把细小部件保留为一像素线条。
6. 调色板
每种材质的每个色带都映射到色阶中的一种颜色。你可以让工具根据模型的颜色生成色阶,也可以强制使用全游戏共用的固定调色板。Pixor 为每种材质生成带色相偏移的色阶,可以使用自动调色板、七种内置调色板之一、Lospec .hex 或 GIMP .gpl 文件,或从图片中提取的调色板。它写出索引色 PNG,并提供 Game Boy、NES、PICO-8、TIC-80 和 C64 颜色限制的游戏机模式。

7. 清理
最后一道工序会去除孤立的单个像素和只出现一帧的线条。这正是一张看起来像手绘的精灵表和一张看起来像视频的精灵表之间的区别。Pixor 把这一清理作为独立的阶段运行。
8. 精灵表
帧被打包进精灵表,通常每个动作和朝向一行,并附带告诉引擎每帧位置的数据。
在 Pixor 中,这些阶段中的每一个都是风格节点图中的一个节点,所以任何一个都可以查看和修改。喜欢的外观可以保存为套件,在整个项目中复用。内置预设(clean、selout、retro4、flat 和 wireframe)是起点。

选择尺寸和方向
尺寸首先是一个设计选择。较小的精灵在人群中更易辨认,修饰起来也更省事;较大的精灵能展现更多个性。粗略参考:
- 16 px 适合图块、物品和非常小的角色。
- 32 px 是俯视角游戏和平台游戏中常见的角色高度。
- 48 到 64 px 有空间表现面部、装备和富有表现力的动画。
选一个每米像素比例,让主角达到你想要的高度,其他一切随之而定。以整数倍(2×、3×、4×)显示游戏,让每个美术像素在屏幕上都是干净的方块。精灵尺寸对此有更详细的介绍。
方向数量:横版游戏用一个朝向(翻转即可得到反方向),简单的俯视游戏用四个,大多数动作和策略游戏用八个,像载具这样平滑转向的物体用十六个。
动画
3D 动画每一瞬间都有一个姿势。像素画动画只有寥寥几帧,而且这些帧是挑选出来的,而不是均匀采样的。
姿势极值与停留
最重要的帧是极限姿势:行走的触地姿势、跳跃的最高点、剑击中的瞬间。好的精灵动画会保留这些帧并让它们多停留一会儿,同时舍弃那些在小尺寸下毫无作用的中间帧。均匀分布的帧往往显得轻飘。Pixor 的智能取帧会挑选姿势的极限并让它们停留。
更少的帧,更干净的帧
在 32 像素下,六帧或八帧的行走就足够了。帧数越多,出现闪烁的可能越多,修整的工作量也越大。Pixor 会测量整个动画中的闪烁。
获取动画
你可以自己为模型制作动画,使用模型自带的片段(或单独的片段文件),或从其他绑定重定向片段。Pixor 还有一个动作库,包含简单的动作(idle、walk、run、jump、attack、hit、death),以及用于道具和拾取物的物体运动(spin、bob、swing、pulse)。
手工修饰
渲染能给你一致的帧,却给不了美术师的判断。大多数好的成果来自先渲染一个干净的底子,再修整关键的帧:让脸更清晰,让攻击帧的剪影更有力,给刀刃加一道高光。
Aseprite 是做这件事的常用工具。Pixor 导出的 .aseprite 文件中,每个动作和朝向各有一个标签。修改模型或设置并重新渲染时,手绘的图层会留在各自的帧上,因此修整不会因重新烘焙而丢失。见 Aseprite。
导出到游戏引擎
引擎需要的是帧和元数据。常见的目标:
- PNG 精灵表,附带一个列出帧、动作和朝向的 JSON 文件。
- Godot SpriteFrames,用于 Godot 项目。
- GIF 或 APNG,用于预览、商店页面和社交媒体发布。
- 法线贴图和深度图,如果你的引擎为 2D 精灵打光。
Pixor 可以导出以上所有格式。由于渲染是确定性的,同样的模型和设置始终得到同样的像素,所以随时可以重建精灵表,不会有意外。见导出和导出手册。
试一试
Pixor 是一款适用于 Windows 和 Linux 的桌面应用,可以离线完成上述每一步,无需账号。它不包含任何生成式 AI:它用你选择的设置渲染你的模型。一次性付费 $19.99,所有更新免费。从工作原理开始,浏览素材库中以这种方式渲染的精灵,或阅读手册了解每项设置。
问题
3D 渲染真的能做出手绘像素画的效果吗?
如果你控制好比例、调色板、光照色带、线条和孤立像素,可以非常接近。大多数美术师仍会手工修饰关键帧;渲染提供的是一个干净、一致的起点。
我的精灵应该多大?
整个游戏选一个每米像素比例。角色通常高 32 到 64 像素;小图块通常是 16 或 32 像素。
需要几个方向?
横版游戏需要一个朝向(镜像)。俯视和等距游戏通常用 4 或 8 个;16 个能让载具和船只平滑转向。
Pixor 使用生成式 AI 吗?
不使用。Pixor 不包含任何生成式 AI。同样的模型和设置始终得到同样的像素。