版本:Unity 6 (6000.0)
语言:英语
解决 URP 中自适应探测体积中的黑色斑点或条纹问题
自适应探测体积检查器参考

解决 URP 中自适应探测体积中的光线泄漏问题

光线泄漏是指过亮或过暗的区域,通常出现在墙壁或天花板的角落。

A light leak.

当几何体从一个 光探测器光探测器存储有关光线如何穿过场景中空间的信息。在给定空间内排列的光探测器集合可以改善该空间内移动物体和静态 LOD 场景的灯光效果。 更多信息
查看 词汇表
接收光线,而该光探测器对几何体不可见(例如,光探测器位于墙壁的另一侧)时,就会经常出现光线泄漏。自适应探测体积使用光探测器的规则网格,因此光探测器可能不会遵循墙壁或位于不同照明区域之间的边界。

要修复光线泄漏,您可以执行以下操作

创建更厚的墙壁

调整墙壁,使其宽度更接近本地 砖块 中探测器之间的距离

在您的场景中添加自适应探测体积选项覆盖

您可以添加一个 体积,然后将 自适应探测体积选项 覆盖添加到该体积中。这将调整 游戏对象Unity 场景中的基本对象,可以代表角色、道具、场景、摄像机、航点等等。游戏对象的功能由附加在其上的组件定义。 更多信息
查看 词汇表
用于采样光探测器的位置。

  1. 将一个 体积 添加到您的 场景场景包含游戏环境和菜单。将每个唯一的场景文件视为唯一的关卡。在每个场景中,您可以放置环境、障碍物和装饰品,本质上是分块设计和构建您的游戏。 更多信息
    查看 词汇表
    中,并确保其区域与 摄像机创建场景中特定视点的图像的组件。输出将绘制到屏幕上或作为纹理捕获。 更多信息
    查看 词汇表
    位置重叠。
  2. 选择 添加覆盖,然后选择 灯光 > 自适应探测体积选项
  3. 启用 法线偏差,然后调整值以沿 像素计算机图像中最小的单位。像素大小取决于您的屏幕分辨率。像素照明是在每个屏幕像素处计算的。 更多信息
    查看 词汇表
    表面法线移动游戏对象像素用于采样光探测器的位置。
  4. 启用 视图偏差,然后调整值以将游戏对象像素用于采样光探测器的位置朝摄像机移动。
  5. 禁用和启用 泄漏减少模式 以检查它是否改善了光线泄漏。

只有当摄像机靠近或位于体积内部时,体积才会影响场景。有关更多信息,请参考 了解体积

有关 自适应探测体积选项 设置的更多信息,请参考 探测体积选项覆盖参考

使用渲染层蒙版

您可以在灯光窗口的 自适应探测体积面板 中配置 渲染 层蒙版定义要包含在或排除在操作中的层的数值,例如渲染、碰撞或您自己的代码。 更多信息
查看 词汇表
。这允许 APV 为每个光探测器分配一个渲染层蒙版。

出于性能原因,自适应探测体积仅支持最多 4 个渲染层蒙版。您可以使用该列表创建一个新蒙版,并使用下拉菜单将其分配给任何渲染层。在生成灯光时,Unity 将尝试通过查看包围探测器的对象的渲染层蒙版来自动为每个探测器分配蒙版。此外,您可以使用 探测调整体积 来覆盖分配给光探测器的渲染层蒙版。

在运行时,渲染器将仅从具有匹配渲染层蒙版的探测器采样灯光数据。如果对象与灯光窗口中定义的任何蒙版不匹配,它将从所有有效的周围探测器采样灯光。请注意,此功能要求在 URP 资源中启用 使用渲染层

例如,为了修复光线泄漏问题,您可以创建一个内部和外部渲染层蒙版,以确保内部对象永远不会从外部探测器采样灯光数据,从而修复穿过墙壁的光线泄漏。渲染器可以在其渲染层蒙版中启用多个渲染层。这在处理可能希望从外部和内部探测器同时采样灯光的动态对象时很有用。

您可以可视化哪些层分配给探测器: - 转到探测体积选项卡 - 启用 显示探测器 - 将 探测着色模式 字段设置为 渲染层蒙版 - 使用 场景视图您创建的世界中的交互式视图。您可以使用场景视图选择和放置场景、角色、摄像机、灯光以及所有其他类型的游戏对象。 更多信息
查看 词汇表
叠加中的切换来隐藏与渲染层蒙版匹配的探测器

调整烘焙设置属性

如果添加体积不起作用,请使用灯光窗口中的 自适应探测体积面板 来调整虚拟偏移和膨胀设置。

  1. 探测膨胀设置 中,减小 搜索半径。这可以帮助解决无效光探测器从更远的光探测器接收灯光数据的情况。但是,较低的 搜索半径 可能会导致光线泄漏。
  2. 虚拟偏移设置 中,减小 搜索距离乘数射线原点偏差
  3. 如果多个位置出现光线泄漏,请调整 最小探测间距最大探测间距 以增加光探测器的密度。
  4. 选择 生成灯光 以使用新设置重新烘焙场景。

注意:不要对设置使用非常低的值,否则膨胀和虚拟偏移可能无法正常工作。

添加探测调整体积组件

使用探测调整体积组件在小区域内使光探测器失效。这将在烘焙期间触发膨胀,并在运行时提高 泄漏减少模式 的结果。

  1. 在自适应探测体积检查器中,选择 添加组件,然后选择 灯光 > 探测调整体积
  2. 设置 大小,以便 探测调整体积 区域与导致光线泄漏的光探测器重叠。
  3. 探测体积覆盖 > 模式 设置为 使探测器失效,以使体积中的光探测器失效。
  4. 如果您有 具有探测体积选项覆盖的体积,请启用 泄漏减少模式
  5. 探测体积设置 中,选择 生成灯光 以使用新设置重新烘焙场景。

使用探测调整体积组件可以解决大多数光线泄漏问题,但通常不能解决所有问题。

如果您在场景中使用许多探测调整体积,烘焙速度会变慢,并且场景可能更难理解和维护。

有关更多信息,请参考 探测调整体积组件参考

修复接缝

接缝是当一种照明条件立即过渡到另一种照明条件时出现的伪像。接缝是由于两个相邻砖块的光探测器密度不同而造成的。有关更多信息,请参考 砖块

Two seams.

要修复接缝,请执行以下操作

  1. 将一个 体积 添加到您的场景中,并确保其区域与摄像机的位置重叠。
  2. 选择 添加覆盖,然后选择 灯光 > 探测体积选项
  3. 启用 采样噪声,然后尝试调整该值以添加噪声,使过渡更漫射。噪声可以帮助打破砖块边界处间接照明的明显边缘。

其他资源

解决 URP 中自适应探测体积中的黑色斑点或条纹问题
自适应探测体积检查器参考