Language:
Page Info
Tags:
Skill Level:
Engine Version:
Share
此中文页面内容对应的英文页面有后续更新,如需浏览最新文档可切换至英文页面浏览。

使用光线追踪距离场阴影

RTDFBanner.png

开发游戏时,您可能发现有时动态照明是用于关卡的最佳选择,例如,可视距离很大的关卡或者具有大型开放世界场景的关卡。在这类情况下,预计算照明可能效率很低或对于目标系统的资源要求过高。光线追踪距离场阴影(Ray Traced Distance Field Shadows) 也称为 距离场阴影(Distance Field Shadow),与配合定向光源 使用的传统 级联阴影贴图(Cascaded Shadow Map)(CSM)相比,它使您能够在更远的距离投射阴影。

在本指南中,您将学习如何为定向光源、点光源和聚光源等不同的光源类型 启用距离场阴影。

步骤

该功能要求您在 项目设置(Project Settings)渲染(Rendering) 部分中启用 生成网格体距离场(Generate Mesh Distance Fields)。请在此处查看如何启用网格体距离场(Mesh Distance Field) (如果尚未启用)。

  1. 首先,导航至 模式(Modes) 窗口,在 光源(Lights) 部分中,选中 定向(Directional)聚(Spot)点(Point) 光源并将其拖动到主要视口中。

    AddLightType.png

    在任意光源组件上启用距离场阴影的过程与此相同。本指南的其他部分将介绍这些光源类型的特定属性。

  2. 细节(Details) 面板的 距离场阴影(Distance Field Shadow) 下面,将 光线追踪距离场阴影(Ray Traced Distance Field Shadows) 设置为启用。

    DirectionalLightDFSettings.png

    PointSpotLightSettingsDF.png

    定向光源

    聚/点光源

    如果该选项显示为灰色,确保先在“项目设置(Project Settings)”中启用 生成网格体距离场(Generate Mesh Distance Fields) 选项,然后确保光源的“可移动性(Mobility)”设置为 可移动(Movable)静止(Stationary)

最终结果

在将光源设置为“可移动(Movable)”或“静止(Stationary)”并将 光线追踪距离场阴影(Ray Traced Distance Field Shadowing) 切换为启用后,在关卡中光源将自动使用它们。对于定向光源,将为超出级联阴影贴图(Cascaded Shadow Map)动态阴影距离(Dynamic Shadow Distance) 值的任意距离启用“距离场阴影(Distance Field Shadowing)”。

仅级联阴影贴图(Cascaded Shadow Maps)

级联阴影贴图(Cascaded Shadow Maps) | 和 | 距离场阴影(Distance Field Shadows)

在《堡垒之夜(Fortnite)》的这一测试关卡中,级联阴影贴图(CSM)动态阴影距离(Dynamic Shadow Distance) 是距离摄像机4500 cm(厘米),在启用“距离场阴影(Distance Field Shadowing)”之后,它们可以处理超出CSM阴影距离的任何阴影。 当仅使用CSM阴影处理方法时,远距离对象(例如法院大楼圆形石柱)会发生漏光,因为它位于阴影距离之外。远距离对象也将无法正确投射阴影。

使用定向光源时,将级联阴影贴图**动态阴影距离可移动光源(Dynamic Shadow Distance Moveable Light) 滑块设置为 0** 非常有用,因为它使仅从网格体距离场产生阴影成为可能。 除了使用可视化视图模式以外,这也是一种测试场景和判断潜在的距离场质量问题的有用方式。

其他光源设置

请参阅距离场参考NEW! 来了解距离场阴影(Distance Field Shadowing) 设置(特定于定向光源点/聚光源 )。 这些设置使您能够对场景进行艺术控制,例如控制阴影的柔和度和阴影能够投射到的最远距离。也可进行一些特定于定向光源的全局调整,以去除场景中由距离摄像机较远的LOD(细节层次)网格体引起的自身阴影瑕疵。

Tags