【Cocos Creator 3.x】如何进行光照烘焙(使用光照贴图)

前言
这是一篇基础教程篇,在于帮助使用者快速理解并使用 Cocos Creator 3.x 引擎提供的 光照贴图 功能。

光照贴图
Cocos Creator 引擎的官方文档是这么描述的:
在这里插入图片描述
当我们进行开发 3D 游戏时,场景中会有很多的静态物体,如果使用动态光源进行计算,那么可能会相当耗费性能的。那么很多时候,我们希望场景中有阴影和光照,且是固定的时候,那么我们就可以使用光照烘焙功能,将光照和阴影进行烘焙。

步骤

1、光源的 Lightmap 设置。场景默认的光源是 Main Light,是平行光。我们在 Main Light 的属性上找到 Static Settings 属性,勾选 BakeableCast Shadow 选项。
备注: Static Settings 选项,翻译过来是静态设置。是专门用于对静态物体做 light map 光照烘焙的设置选项。
Editor Only:仅在编辑器有效。
Bakeable:允许参与光照烘焙。
Cast Shadow:允许投射阴影。
在这里插入图片描述
2、投射阴影的模型。对于需要投射阴影的模型,如 Capsule 圆柱体。在模型的属性中,找到 MeshRenderer 网格渲染器下,LightMap Settings 用于光照烘焙的设置。勾选 BakeableCast Shadow 选项。
在这里插入图片描述
3、接收阴影的模型。对于需要接收阴影的模型,如 plane 平面。在模型的属性中,找到 MeshRenderer 网格渲染器下,LightMap Settings 用于光照烘焙的设置。勾选 BakeableReceive Shadow 选项。
在这里插入图片描述
4、在 Creator 编辑器顶部菜单栏,【项目】->【光照贴图】,可以打开光照贴图设置界面。

5、在光照贴图面板上,点击生成光照贴图,进行光照贴图烘焙。
在这里插入图片描述
6、光照烘焙完成后,资源管理器上会多出一个 LightFX 的文件夹,里面包含了光照贴图的资源。
在这里插入图片描述
最终,我们在场景上看到我们烘焙完成之后的光照贴图(光照、阴影)。
在这里插入图片描述
但是,我们发现,阴影烘焙之后呢,有点“粗糙”,表现为有很多的锯齿。
原因
我们在烘焙光照贴图的模型的设置上,使用的默认的 LightMap Size 光照贴图大小为 64,过小导致的。

解决方案
我们把 LightMap Size 数值改大一些即可,比如改为 256 。注意:需要将投射阴影的模型和接收阴影的模型的 MeshRenderer 下的 LightMap Size 都做修改。
在这里插入图片描述
烘焙完成之后,是不是比原先的平滑了?

小结
光照烘焙的流程并不麻烦,其实按照官方的文档也可以正确操作。但是其中有一些细节可能不容易被发现。另外还有一些问题会导致烘焙失败:
1、参与光照烘焙的模型,需要有 2 套 UV,其中一套 UV 作为 LightMap 的 UV。目前 Cocos Creator 引擎还没有对模型自动展 UV,所以做光照烘焙时依赖美术处理。
2、在低于 Cocos Creator 3.5.2 版本的 Cocos Creator 版本,需要在模型的材质(material)上勾选 USE Light Map 才会在当前模型上正确使用光照贴图,3.5.2 以上的版本则不需要,引擎会自动开启 USE Light Map。

光照烘焙的内容是不是很简单,喜欢这个内容的话,就帮忙点个【关注】或者【点赞】、【收藏】吧~

猜你喜欢

转载自blog.csdn.net/u014206745/article/details/128107925