跳到主要内容

烘焙:把昂贵计算变成可交付数据

Bake/烘焙意味着预先求出某种计算结果,再把它存成后续能直接使用的数据。“烘焙一下”不够具体,必须说明烘焙什么、到什么格式。

三种常见含义​

类型输入结果用途
贴图烘焙材质、高低模、光照等颜色、法线、AO 等图片简化材质或把高模细节转给低模
动画烘焙约束、IK、程序计算的姿态采样后的变换关键帧让引擎不依赖制作端控制器
模拟缓存物理或其他模拟缓存、网格序列等保持制作端重放稳定,或转换为交付格式

缓存文件能在 Blender 里重放,不代表 Cocos 能直接读取;仍需定义交换资源。

高模到低模法线烘焙​

高模表达细小形状,低模保留轮廓和可接受的几何成本。烘焙把高模表面方向差异编码到低模法线贴图,运行时通过着色模拟细节。

它无法让低模侧面轮廓真的鼓起来,也不会自动生成正确碰撞。投射距离、Cage、UV、切线空间与硬边都可能影响结果。

程序纹理的交付​

如果材质依赖 Blender 程序节点,可以把需要的颜色或表面数据输出到图片。先为目标网格建立 UV 和目标 Image Texture,明确所烘焙的通道、渲染器、图像尺寸与保存路径。

不要把灯光和阴影不加区分地烘焙进 Base Color:固定光照可能适合 2D 图标,却会让实时动态光照模型出现“双重阴影”。应明确你是在制作无光照图像,还是可重新打光的 PBR 资源。

一次可靠的烘焙任务​

把该程序材质转换成可供 glTF/Cocos 使用的贴图。
先列出需要烘焙的通道、UV要求、色彩空间、图像格式和尺寸。
保留程序材质源工程,另存烘焙结果并检查外部文件引用。
请在中性灯光下比较烘焙前后,并说明无法保留的效果。

验收时从磁盘重新加载图片,防止只保存在 Blender 内存。检查 UV 接缝、边距、缺失区域以及缩小后的采样。动画烘焙另见动画与导出。

官方阅读:Cycles Render Baking。