简介: Unity HDRP 通过体积框架来实现了一些光照和阴影的控制。我们这里先介绍一下能对几个阴影的控制功能进行简单讲解。
版本:Unity2019.4.12f1 HDRP 7.5.1
准备
-
HDRP 管线提供三种阴影功能,它们是:
1. 阴影:可以控制本体积内的阴影级联和阴影距离
2.微阴影:主要用于根据法线生成投影效果,属于后处理类型
3. 接触阴影:是在屏幕空间内用来补充常规阴影无法捕获的阴影细节,属于后处理类型 -
将 Shadows、MicroShadows、ContactShadows 都添加到我们的体积组件上 ,我们逐一讲解

-
在项目设置内,将阴影模式调整DistanceShadowmask 便于我们观察级联效果
Edit->ProjectSettings
Shadows 阴影
-
本功能主要用来控制级联阴影的效果,级联阴影的作用就是,在指定的范围内,按照指定的比例,使用不用精度的实时阴影,距离相机进的位置阴影精度越高,距离相机远的位置阴影精度越低。
-
MaxDistance 距离相机在此范围内会产生实时阴影,在这个距离之外会使用灯光贴图。级联阴影的级联范围就是这里设置的值。
-
要观察实时级联阴影效果需要开启级联开关,位置在ProjectSettings->HDRP->Lighting->Use Contact Shadows,勾选上需要开启级联阴影的品级

- VisualLizeCascdes 按下后,以可视化的状态在Scene窗口中显示不同位置所属于的级联等级,显示的颜色和最下方 CascadeSplits 的颜色一致。


- Working Unit 此属性以下级联阴影相关功能使用的单位,有两种,一个是 meter (米),一个是Percent(百分比),一般建议使用米,好理解,易操作。

-
Transmission Multiplier 设置方向光在较厚对象上透射的光线时由 HDRP 应用于该光线的乘数。
-
Cascade Count 级联数量 1 - 4 级,值越大,级联数量越多


- Split 对应级联的切分结束位置,这个属性的数量与级联的数量 - 1 相对应,因为最后一个级联的结束位置不需要指定。

- Border 级联边界混合, 从结束位置向开始位置过度,值越大,当前级联被过渡掉的部分越多,值为 0 时没有过渡。最大值为当前级联结束位置在总距离上的百分比。

- Cascade Splits 级联切分,当上面的 split 或 border 属性激活时,这里的锚点可以直接拖动,上方是锚点是级联结束切分,锚点的下方是过渡边界的切分,从这里调节更方便和直观。
MicroShadows 微阴影
- 在屏幕空间内,根据AO和法线计算细小的阴影效果,开启后可以丰富画面细节。


- opacity 微阴影的强度控制

ContactShadow 接触阴影
- 使用接触阴影可以捕捉一些实时光影无法捕获的细节
- 普通的基础阴影效果一般,开启光线追踪版会有极大的提升
- 只要网格渲染器使用的材质会写入到深度缓冲区,光源便会投射接触阴影。这一点与您启用还是禁用网格渲染器上的 Cast Shadows 属性无关

- length 使用滑动条设置 HDRP 要追踪的光线长度(以米为单位)。还可以作为光线能够捕捉细节的最大距离
- DistanceScaleFactor 按距离放大接触阴影。请使用滑动条设置 HDRP 用于抑制该缩放比例(以避免因距离而产生瑕疵)的值。
MaxDistance 与摄像机之间的距离(以米为单位):HDRP 从此距离处开始将接触阴影淡出为零 - FadeDistance HDRP 从 Max Distance 位置开始淡出接触阴影的距离(以米为单位)。
- Opacity 控制接触阴影的透明度
- Quality 质量控制,分为三级和一个自定义等级

- SampleCount 采样数量,用来计算接触阴影的射线数量,值越高效果越好。Quality 设置为 Custom 时可以配置。不考虑性能的话建议直接设置最大值。


网友评论