环境光遮挡 (Ambient Occlusion)
环境光遮挡覆盖是一种可在高清渲染管线 (High Definition Render Pipeline, HDRP) 中使用的实时全屏光照效果。此效果模拟当前视野中的环境光遮挡。它根据场景中的光源和游戏对象周围的环境来模拟环境光在游戏对象表面上的强度和位置。为了实现这一点,此效果会使挨着折痕线、小孔、相交线和平行表面的地方变暗。在现实生活中,这些区域往往会阻挡或遮挡周围的光线,因此会显得更暗。
如需了解如何使用纹理指定由游戏对象材质中存在的细节而不是游戏对象表面几何体上的细节引起的环境光遮挡,请参阅环境光遮挡 (Ambient Occlusion)。
使用环境光遮挡
环境光遮挡使用体积 (Volume) 框架,因此若要启用和修改环境光遮挡属性,必须将环境光遮挡覆盖添加到场景中的体积。要向体积添加环境光遮挡,请执行以下操作:
- 在 Scene 视图或 Hierarchy 视图中,选择一个包含 Volume 组件的游戏对象以在 Inspector 中查看该游戏对象。
- 在 Inspector 中,导航到 Add Override > Lighting,然后单击 Ambient Occlusion。 HDRP 现在会将环境光遮挡应用于此体积所影响的任何摄像机。
属性
要编辑任何 Volume 组件覆盖中的属性,请启用属性左侧的复选框。这也告诉 HDRP 使用您为 Volume 组件指定的属性值而不是使用默认值。如果禁用该复选框,HDRP 将忽略您设置的属性,并改用该属性在 Volume 组件中的默认值。
属性 | 描述 |
---|---|
Intensity | 使用滑动条引导环境光遮挡的强度。值越高,结果越暗。HDRP 使用此值作为指数来评估像素对于环境光遮挡的最终值。 |
Direct Lighting Strength | 使用此滑动条更改遮挡对直接漫射光照的影响程度。 |
Step Count | 使用滑动条设置 HDRP 搜索遮挡物所需的步骤数。增大此值可产生更精确的结果。随着 HDRP 找到更多的遮挡物,这可能会产生更暗的结果。 |
Radius | 使用滑动条设置 HDRP 在某个点附近搜索遮挡物的距离。设置较高的值可以使环境光遮挡覆盖较大规模特征。请注意,较大的距离值通常会产生较低的质量结果。注意:HDRP 将屏幕空间中的半径限制为您在 Maximum Radius in Pixels 中设置的值。 |
Maximum Radius In Pixels | 使用滑动条设置 HDRP 搜索遮挡物的区域上限(以像素为单位)。该数值假定您使用的分辨率为 1920 x 1080。使用其他分辨率时,HDRP 会相应缩放该值。为实现良好的性能,请保持该值尽可能低。 |
Full Resolution | 启用此复选框会以全分辨率处理环境光遮挡算法。这可以显著提高质量,但会占用大量资源,并且会影响性能。禁用此复选框会以应用程序运行的一半分辨率来处理环境光遮挡算法。默认情况下会禁用此设置。 |
Temporal Accumulation | 启用此复选框可以累积 AO 随时间变化的结果。这将产生更好的质量,但可能会导致诸如非即时收敛和重影之类的瑕疵。注意:如果没有运动矢量,此模式将不会带来良好的结果。 |
Ghosting Reduction | 此选项仅在启用 Temporal Accumulation 时可用。 此因子移到接近于 0 将在时间累积期间增加接受的样本数,从而增加重影,但会减少时间噪点。该值移到接近于 1 会减少重影,但代价是产生更明显的时间噪点。 |
Bilateral Upsample | 启用此复选框可以通过双边上采样对低分辨率 AO 进行上采样。这样可以更好地保留锋利的边缘,但是成本稍高一些,并可能导致更明显的锯齿。注意:仅当 Full Resolution 设置为 false 时,此模式才可用。 |
Direction Count | 确定要在多少个方向搜索遮挡,增加此值将大幅影响性能。注意:仅当 Temporal Accumulation 设置为 false 时,此模式才可用。 |
Blur sharpness | 确定非时间模糊的清晰度。较高的值可以更好地保留清晰特征(具有较高的噪点风险),较低的值可以使外观更柔和。注意:仅当 Temporal Accumulation 设置为 false 时,此模式才可用。 |
详细信息
环境光遮挡是一种屏幕空间效果,因此只处理屏幕上给定时间点的对象。这意味着视野外的对象无法在视觉上遮挡视图中的对象。有时可以在屏幕边缘看到这种情况。