Choose your operating system:
Windows
macOS
Linux
如果游戏针对间接光照区域使用预计算照明,混合可移动对象可能会非常具有挑战性,因为它们不会拥有柔和区域阴影。有时需要模拟这种类型的效果,以使用复杂材质设置乃至贴花将动态对象与场景的其他部分混合起来。距离场间接阴影(Distance Field Indirect Shadows)(DFIS)使你能够为用于间接光照区域中的区域阴影的单个静态网格体生成网格体距离场。在这些区域中,传统的阴影贴图方法表现不佳。
距离场间接阴影的工作原理与用于骨骼网格体的胶囊体阴影的相似,都使用在构建光照的过程中生成的预计算光照样本。这些光照样本使用体积光照贴图来确定间接光照的方向性和强度。
在本指南中,你将学习如何为单个网格体启用距离场,然后将这类网格体在关卡中用于使用静态间接光照照亮的区域,从而得到类似于该视频中的效果:
步骤
与其他网格体距离场(Mesh Distance Field)功能不同,DFIS不要求为整个项目启用 生成网格体距离场(Generate Mesh Distance Fields)。它可以逐网格体启用,如以下步骤所述。
在 内容浏览器(Content Browser) 中,首先选择任意 静态网格体(Static Mesh) 资产,然后双击以打开静态网格体编辑器(Static Mesh Editor)。
在该示例中,将使用来自太阳神庙(Sun Temple)项目的静态网格体 SM_Statue(位于Epic Games启动程序中)进行演示。
在静态网格体编辑器(Static Mesh Editor)中,导航至 细节(Details) 面板。在 静态网格体设置(Static Mesh Settings) 分段中,将 生成网格体距离场(Generate Mesh Distance Fields) 设置为启用。启用它后,可以 保存 并 关闭 静态网格体编辑器。
从 内容浏览器(Content Browser) 中,选择 SM_Statue 网格体并将它拖动到关卡视口中,在其中,你会留意到该静态网格体没有阴影。
在关卡中选中该Actor之后,转至 细节(Details) 面板并将其 可移动性(Mobility) 设置为 可移动(Movable)。
然后,在 照明(Lighting) 选项卡下面,启用 距离场间接阴影(Distance Field Indirect Shadow)。
如果场景尚未进行光照构建,使用主工具栏并单击 构建 按钮来为场景构建光照。
最终结果
在有很多反射光照的间接光照区域中,应该可以看到可移动静态网格体能在间接光照区域中投射柔和阴影,而之前并没有阴影投射。
请记住,在采用直接光照的区域或明亮光照的区域,间接阴影基本上不存在。
其他设置
使用距离场参考来了解特定于静态网格体Actor的距离场间接阴影(Distance Field Indirect Shadows)设置。