演示:光照烘焙

Tutorial

intermediate

+0XP

60 mins

(10)

Unity Technologies

演示:光照烘焙

最佳做法是尽可能确定 3D 移动应用程序中的静态对象,以便正确、有效地照亮它们。在本演示中,我们将比较烘焙和非烘焙光照的性能。

1. 概述

在上一个教程中,你了解了在 3D 场景中实现烘焙光照的好处。在本演示中,你将剖析两个示例场景,并比较烘焙与非烘焙光照的性能差异。

2. 开始之前

请在此处下载包含示例演示的课程项目。当弹出提示时,单击 Lighting Demo - Non-bakedLighting Demo - Baked

也可以在 Project 视图中打开示例场景(Assets > 4 Lighting > Scene > Lighting_BakedAssets > 4 Lighting > Scene > Lighting_Unbaked)。下载并打开后,可以在编辑器中进入运行模式,也可以将该场景构建到移动设备上以在性能分析器中进行性能分析。

3. 要观察的内容

如上一个教程中所述,Unity 引擎提供了三个生成光照贴图的选项 - EnlightenProgressive CPU lightmapperProgressive GPU lightmapper。在本项目中,我们选择使用渐进 CPU 光照贴图,因为 Enlighten 即将弃用,而渐进 GPU 光照贴图还处于预览阶段。

使用渐进 CPU 光照贴图实现烘焙光照时,可在处理光照信息时节省 CPU 周期。因此,你可能会发现每秒帧数 (FPS) 大幅增加,而 CPU 使用率却出现下降。在测量两个场景的 FPS 时,你应会在 Statistics 窗口中看到明显的差异。

移动设备能够真正体现这种差异。将示例场景构建到你选择的手机上,对两个场景进行性能分析,同时在性能分析器的 Global Illumination 部分中观察 Total CPU 图。根据手机的规格,你应会看到 CPU 使用率存在巨大差异。

注意:虽然我们选择了渐进 CPU 光照贴图,但我们鼓励你试用渐进 GPU 光照贴图并进行性能分析。根据系统 GPU 的不同,性能可能会有所差异。)

4. 总结

光照可以强调移动应用程序中可能会被忽略或不被重视的特征。在做出光照决策时,请明智地选择静态和非静态光照,该选择将决定你的应用程序能否达到预期以及能否在目标设备上有效执行。

---

恭喜!你已学完本《适用于移动应用程序的 3D 美术优化》课程!请继续前往最后一个项目 - 我们将简要讨论后续步骤及其他资源,在你的游戏开发之旅中提供各种帮助。

Complete this Tutorial