版本:Unity 6 (6000.0)
语言:英语
URP 中的反射
反射故障排除

URP 中的反射探针

URP 使用以下属性来确定反射探针一种渲染组件,可以捕捉其周围环境的球形视图,有点像相机。捕获的图像然后存储为立方体贴图,可以被具有反射材质的对象使用。 更多信息
参见 术语表
游戏对象Unity 场景中的基本对象,可以表示角色、道具、场景、摄像机、路径点等。游戏对象的功 能由附加到它的组件定义。 更多信息
参见 术语表
的贡献。

  • 反射探针体积
  • 混合距离

注意:在执行间接绘制调用时,Unity 不支持 延迟前向 渲染路径中的反射探针。Unity 在 前向+ 渲染路径渲染管线用于渲染图形的技术。选择不同的渲染路径会影响灯光和阴影的计算方式。一些渲染路径比其他路径更适合不同的平台和硬件。 更多信息
参见 术语表
中支持它们。

反射探针体积

每个反射探针都有一个盒子体积。反射探针仅影响游戏对象位于盒子体积内的部分。当游戏对象的像素计算机图像中的最小单位。像素大小取决于屏幕分辨率。像素灯光在每个屏幕像素处计算。 更多信息
参见 术语表
位于任何反射探针体积之外时,Unity 使用天空盒一种特殊的材质,用于表示天空。通常为六面体。 更多信息
参见 术语表
反射。

在 URP 中,Unity 会根据像素相对于探针体积边界的的位置,评估每个像素每个探针的贡献。

此行为与内置渲染管线一系列操作,获取场景内容并将其显示在屏幕上。Unity 允许您选择预构建的渲染管线或编写自己的渲染管线。 更多信息
参见 术语表
不同,在内置渲染管线中,Unity 会评估整个对象的探针贡献。

混合距离

每个反射探针都有 混合距离 属性。此属性是从反射盒体积的面到盒体积中心的距离。

Unity 使用混合距离属性来确定反射探针的贡献。当游戏对象的像素位于反射探针体积的面时,该像素从探针获得 0% 的反射。当像素位于反射探针体积内,并且它到每个面的距离超过混合距离值时,该像素获得 100% 的反射。

如果混合距离值大于反射探针体积的面之间距离的一半,则反射探针无法对体积内的任何像素提供 100% 的贡献。

哪些反射探针会影响游戏对象

当游戏对象位于多个反射探针体积内时,最多两个探针可以影响游戏对象。Unity 使用以下标准选择哪些探针影响游戏对象

  • 反射探针的 重要性 属性。Unity 选择两个具有较高重要性值的探针并忽略其他探针。

  • 如果重要性值相同,Unity 会选择具有最小盒子体积的探针。

  • 如果重要性值和盒子体积相同,Unity 会确定哪些两个反射探针体积包含游戏对象的较大表面积,并选择这些体积的探针。

当两个反射探针影响游戏对象时,对于每个像素,Unity 会根据该像素到探针盒子体积面的距离以及 混合距离 属性的值计算每个探针的权重。

如果像素相对靠近两个盒子体积的面,并且两个探针的权重总和小于 1,则 Unity 将剩余的权重分配给 _GlossyEnvironmentCubeMap。此立方体贴图包含灯光窗口中 环境灯光 > 光源 下设置的光源的反射。在大多数情况下,此光源是天空盒。

如果像素位于两个盒子体积内,并且距离两个体积面的距离都大于混合距离值

  • 如果反射探针的 重要性 属性相同,Unity 会以相等的权重混合探针的反射。

  • 如果其中一个探针的 重要性 属性更高,Unity 仅应用该探针的反射。

URP 中的反射
反射故障排除