动态场景阴影

概述动态场景阴影内容示例图。

Windows
MacOS
Linux

动态场景阴影(Dynamic Scene Shadows) 内容示例图演示了如何通过使用 级联阴影贴图(Cascading Shadow Mapping) 创建使用烘焙光照的动态阴影效果,级联阴影贴图(Cascading Shadow Mapping) 是一种专门用于 定向光源Actor(Directional Light Actors) 的阴影方法。 它们优于烘焙阴影,因为它们允许动态对象的阴影,例如树叶在风中摇摆的树木,创建一种更逼真的场景。

级联阴影贴图的工作原理

级联阴影贴图方法将视图视锥划分成一系列基于距离的阴影级联,当您离摄像机越远,每个级联的分辨率就越低。 这意味着,离玩家视野最近的阴影分辨率最高,而距离最远的阴影分辨率最低。 超出 动态阴影距离(Dynamic Shadow Distance) 属性的范围,系统将重新混合到静态烘焙阴影中。通过这种方式,您可以拍摄一个使用烘焙光照的场景,并在您离开对象时,将其平滑地过渡为静态烘焙阴影。

CascadedShadowMapsImage.png

在上图中,注意动态阴影(靠近摄像机)在黄线附近逐渐淡化消失,黄线用于指定动态阴影距离。 1.显示静态阴影的区域 2.靠近摄像机的区域,显示级联阴影贴图

级联阴影贴图属性

在定向光源Actor的 详细信息(Details) 面板中,您将找到 级联阴影贴图(Cascading Shadow Mapping) 类别。其中包含以下属性。

属性

说明

动态阴影距离(可移动光源和静态光源)(Dynamic Shadow Distance (MovableLight and StationaryLight))

它控制与摄像机的距离,您将在其中看到级联阴影贴图。超出此范围,您将只看到预计算的阴影贴图。设置为0可以有效地禁用动态阴影。注意,有一个可移动光源和静态光源的设置。

数字动态阴影级联(Num Dynamic Shadow Cascades)

它控制将在其中划分动态阴影距离的级联分段数量。在距离上级别越多,阴影分辨率越好,但性能消耗也会更高。

级联分布指数(Cascade Distribution Exponent)

它控制在级联之间可进行摄像机过渡的距离。该值作为动态阴影距离(Dynamic Shadow Distance)的一部分应用。值为1将使得在与分辨率成比例的距离进行过渡。值大于1将使过渡更靠近摄像机。

级联过渡部分(Cascade Transition Fraction)

它控制从一个级联到下一个级联的淡化比例。当值趋近于0时,过渡收紧。当值为0处,没有过渡,导致级联之间形成硬边。

阴影距离淡出部分(Shadow Distance Fadeout Fraction)

它从整体上将过渡柔化成级联阴影贴图,当值为0时为硬转换,当值为1为完全柔化。通常,值为0.1是较好的。该值没有性能开销。

使用可移动对象嵌入阴影(Use Inset Shadows for Movable Objects)

该选项允许在由静态光源照亮的可移动对象上使用嵌入阴影。当可移动对象移动到动态阴影距离(Dynamic Shadow Distance)的范围之外时,特别是当动态阴影距离(Dynamic Shadow Distance)设置为一个较低的值时,该选项非常有用。当动态阴影距离(Dynamic Shadow Distance)非常大时(当前 > 8000),将强制关闭该选项。

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback