反射探针 (Reflection Probe)
反射探针组件是高清渲染管线 (High Definition Render Pipeline, HDRP) 提供的反射探针类型之一,可用于创建快速反应的精确反射材质。
属性
HDRP 反射探针以内置渲染管线反射探针作为基础,因此与内置版本之间有许多共享属性。HDRP 反射探针还与 HDRP 平面反射探针 (Planar Reflection Probe) 之间有许多共享属性。
一般属性
属性 | 描述 |
---|---|
Type | 使用下拉选单选择此反射探针用于捕获场景视图的模式。反射材质会查询此捕获以处理其表面的反射。 • Realtime:使反射探针实时捕获场景视图。使用 Realtime Mode 属性可以设置时间周期。 • Custom:允许指定立方体贴图纹理来充当反射探针捕获的场景视图。使用 Texture 属性可以指定立方体纹理。 • Baked:使反射探针在运行时使用静态立方体贴图纹理。在构建 Unity 项目之前,必须烘焙此纹理。在此模式下,反射探针不会捕获禁用了反射探针静态 (Reflection Probe Static) 标志的游戏对象。 |
Realtime Mode | 使用下拉选单选择反射探针应当捕获场景视图的频率。 •Every Frame:每帧更新探针的捕获数据。 • On Enable:在 Unity 每次调用组件的 OnEnable() 函数时都会更新探针的捕获数据。每当在 Inspector 中启用组件或激活组件附加到的游戏对象时,就会执行此操作。仅当从 Type 下拉选单中选择 Realtime 时,才显示此属性。 |
Texture | 为反射探针指定纹理以用作其捕获的场景视图。 仅当从 Type 下拉选单中选择 Custom 时,才显示此属性。 |
Projection Settings
以下属性用于控制此反射探针的投影设置。
属性 | 描述 |
---|---|
Proxy Volume | 此探针使用的反射代理体积 (Reflection Proxy Volume),用于纠正探针捕获点 (Mirror Position) 与此探针捕获的反射材质(使用纹理)位置之间的位移问题。注意:指定的 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 模式会显示 Face Fade 属性。还允许根据每个轴、每个方向来设置 Face Fade、Blend Distance 和 Blend Normal 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 影响体积。此功能仅适用于延迟反射探针。 |
Blend Normal Distance | 反射探针周围的区域,此区域内背离捕获位置的法线不会受到该探针的任何影响。 1.Blend Normal Influence 体积之外的反射表面上的像素会受到该探针的混合影响。 2.如果此像素具有背离捕获位置 (Capture Position) 的法线,则此像素不会受到该探针的影响。当建筑物内部具有探针且影响体积大于建筑物本身时,这非常有用。将 Blend Normal Distance 设置为小于建筑物大小的值意味着探针不会影响建筑物朝向外部的墙壁。 此属性仅适用于延迟反射探针。 |
Face Fade | 在 Box Shape 影响体积的每个轴上为每个方向定义一个淡入淡出值。反射探针基于这些值淡出反射探针对反射材质的影响。仅在 Advanced 模式下可用。 |
Capture Settings
以下属性可以控制反射探针用于捕获其周围环境的方法。
属性 | 描述 |
---|---|
Capture Position | 相对于变换位置的位置,反射探针从该位置捕获其周围环境。 |
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 中包含的层上的游戏对象会出现在反射中。 |
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 | 反射探针捕获的 RenderTexture 的乘数。当反射材质查询 RenderTexture 时,反射探针会应用此乘数。 |
Weight | 此反射探针对材质反射效果的影响的总权重。当反射探针混合在一起时,每个探针的权重决定了它们对混合区域中反射材质的影响程度。 |
Range Compression Factor | 探针渲染的结果将除以该因子。读取探针时,将在读取探针数据的过程中撤消该因子。这对于处理反射中很亮或很暗的对象(否则会饱和)特别有用。 |
辅助图标
可以使用 Scene 视图辅助图标来直观地自定义特定属性。
辅助图标 | 属性 | 描述 |
---|---|---|
Influence Volume boundary | 提供 Scene 视图控制柄,可用于调整影响体积(定义此反射探针影响反射材质的区域)的边界大小。根据选择的 Shape 设置,编辑 Box Size 或 Radius 值。 | |
Blend Distance boundary | Scene 视图控制柄,可用于更改与 Box Size 或 Radius 之间的向内距离(该反射探针在此距离处与其他反射探针混合)。其行为取决于您使用的工作流程模式。在 Normal 模式下均匀缩放所有面,而在 Advanced 模式下仅缩放控制柄所在的面。 | |
Blend Normal Distance boundary | 提供 Scene 视图控制柄,可用于调整边界的大小(在此区域内,如果像素具有背离捕获位置 (Capture Position) 的法线,则不会受到该探针的任何影响)。 | |
Capture Position | 更改移动工具 (Move Tool) 的行为,使其更改 Capture Position 属性而不更改 Transform 的 Position。 |