平面反射探针 (Planar Reflection Probe)
平面反射探针组件是高清渲染管线 (High Definition Render Pipeline, HDRP) 提供的反射探针类型之一,可用于创建快速反应的精确反射材质。
属性
平面反射探针与内置渲染管线反射探针和 HDRP 立方体贴图反射探针共享许多属性。
一般属性
属性 | 描述 |
---|---|
Realtime Mode | 平面反射探针实时更新。使用此属性指示 HDRP 更新探针的频率。 Every Frame 每帧更新探针的捕获数据。 On Enable 在 Unity 每次调用组件的 OnEnable() 函数时都会更新探针的捕获数据。每当在 Inspector 中启用组件或激活组件附加到的游戏对象时,就会执行此操作。 |
Projection Settings
以下属性用于控制此平面反射探针的投影设置。
属性 | 描述 |
---|---|
Proxy Volume | 此探针使用的反射代理体积 (Reflection Proxy Volume),用于纠正探针捕获点 (Mirror Position) 与此探针捕获的反射材质(使用 RenderTexture)位置之间的位移问题。注意:指定的 Proxy Volume 必须与影响体积 (Influence Volume) 具有相同的形状 (Shape)。 |
Use Influence Volume As Proxy Volume | 勾选此复选框可以使用影响体积 (Influence Volume) 的边界作为代理体积 (Proxy Volume)。 仅当反射代理体积 (Reflection Proxy Volume) 未设置为 Proxy Volume 属性时,才显示此属性。 |
Influence Volume
影响体积 (Influence Volume) 定义探针周围的区域,此区域中的反射材质使用探针捕获的结果来影响其表面的反射行为。如果不提供覆盖值,则平面反射探针还使用影响体积的边界来计算视野 (Field Of View)。
可以使用两个工作流程来编辑平面反射探针的影响体积:Normal 模式和 Advanced 模式。使用 Influence Volume 部分右上角的两个按钮可以选择使用哪种模式。
- Normal 模式可以设置 Blend Distance 的单个值。Normal 模式适用于 Box 和 Sphere 影响体积。
- Advanced 模式可以定义每个轴、每个方向的 Blend Distance,适用于 Box Shape 的影响体积。
属性 | 描述 |
---|---|
Shape | 定义影响体积的形状。可能的值为 Box 和 Sphere。选择 Sphere 会禁用 Advanced 模式,因为只有 Box 影响体积才能使用 Advanced 模式。 |
Box Size | 定义表示影响体积的盒体的每个轴的缩放。仅适用于 Box Shape。 |
Radius | 定义表示影响体积的球体的半径。仅适用于 Sphere Shape。 |
Blend Distance | 与 Box Size 或 Radius 之间的向内距离,该平面反射探针在此距离处与其他反射探针混合。在 Normal 模式下,此属性是单个值,用于调节该反射探针在各个方向上与其他反射探针混合的距离。此模式适用于 Box 或 Sphere 影响体积。在 Advanced 模式下,此属性使用六个值,盒体的每个面对应一个值。使用六个输入字段中的每一个字段来定义每个方向上的混合距离。例如,Y 定义盒体顶面的混合距离,而 -Y 定义底面的混合距离。此模式仅适用于 Box 影响体积。此功能仅适用于延迟反射探针。 |
Capture Settings
以下属性可以控制平面反射探针用于捕获其周围环境的方向视图的方法。
属性 | 描述 |
---|---|
Mirror Position | 从变换位置偏移镜像位置。 |
Mirror Rotation | 从变换旋转偏移镜像旋转。 |
Clear Mode | 定义如何填充此探针捕获的 RenderTexture 的空背景区域。 • Sky 使用当前体积设置定义的天空来填充空背景区域。 • Background 使用 Background Color 设置来填充空背景区域。 • None 重复使用每个不代表反射游戏对象的像素的先前值,而不是填充 RenderTexture 的空区域。 |
Background Color | 在 Clear Mode 设置为 Background 的情况下用于填充 RenderTexture 空背景区域的颜色。 |
Clear Depth | 选择平面反射探针是否清除深度缓冲区。 |
Volume Layer Mask | 此 LayerMask 用于定义哪些体积会影响此平面反射探针的捕获。 |
Volume Anchor Override | 设置体积系统用于处理此平面反射探针位置的变换组件。例如,如果希望此平面反射探针将后期处理效果与视图摄像机相匹配,请将此属性设置为视图摄像机的变换组件。然后,体积系统使用摄像机的位置来处理哪个体积会影响此平面反射探针。 |
Use Occlusion Culling | 为此平面反射探针启用遮挡剔除 (Occlusion Culling)。 |
Culling Mask | 此 LayerMask 用于定义要包含在反射中的层。此 LayerMask 中包含的层上的游戏对象会出现在反射中。 |
Field Of View | 捕获摄像机的视野。平面反射探针通常使用 Mirror Position 和影响体积的边界来计算捕获摄像机的视野 (FoV)。启用此属性可以使用在此处设置的值来覆盖捕获摄像机的 FoV。 |
Clip Planes - Near | 平面反射探针捕获反射的最近点(相对于探针)。 |
Clip Planes - Far | 平面反射探针捕获反射的最远点(相对于探针)。 |
Probe Layer Mask | 用作环境光(来自其他平面反射探针和反射探针的光)的剔除遮罩。此平面反射探针会忽略未包含在此层遮罩中的层上的所有反射探针,因此在渲染此平面反射探针时,请使用该属性忽略某些反射探针。 |
Custom Frame Settings | 为此探针定义自定义的帧设置 (Frame Settings)。禁用此属性会使用 Unity 项目的 HDRP 资源中的默认帧设置。 |
Custom Settings
以下属性用于控制额外的行为选项以微调平面反射探针的行为。
属性 | 描述 |
---|---|
Light Layer | 一种遮罩,允许选择此反射探针影响的光源层。此反射探针仅影响具有匹配渲染层遮罩 (Rendering Layer Mask) 的网格渲染器。 导航到项目的 HDRP Asset > Render Pipeline Supported Features,然后启用 Light Layers 来使用此属性。 |
Multiplier | HDRP 应用于平面反射探针捕获的 RenderTexture 的乘数。较高的乘数值使查询的 RenderTexture 更亮,而较低的乘数值使查询的 RenderTexture 更暗。 |
Weight | 此反射探针对材质反射效果的影响的总权重。当反射探针混合在一起时,每个探针的权重决定了它们对混合区域中反射材质的影响程度。 |
辅助图标
可以使用 Scene 视图辅助图标来直观地自定义特定属性。
辅助图标 | 属性 | 描述 |
---|---|---|
Influence Volume bounds boundary | 提供 Scene 视图控制柄,可用于移动影响体积(定义此反射探针影响反射材质的区域)的边界。根据选择的 Shape 设置,编辑 Box Size 或 Radius 值。 | |
Blend Distance boundary | Scene 视图控制柄,可用于更改与 Box Size 或 Radius 之间的向内距离(该平面反射探针在此距离处与其他反射探针混合)。其行为取决于您使用的工作流程模式。在 Normal 模式下均匀缩放所有面,而在 Advanced 模式下仅缩放控制柄所在的面。 | |
Mirror Position | 更改移动工具 (Move Tool) 的行为,使其更改 Mirror Position 属性而不更改 Transform 的 Position。 | |
Mirror Rotation | 更改旋转工具 (Rotate Tool) 的行为,使其更改 Mirror Rotation 属性而不更改 Transform 的 Rotation。 |