CullingResults

struct in UnityEngine.Rendering

切换到手册

描述

剔除结果(可见对象、光源、反射探针)。

在脚本化渲染循环中,渲染过程通常会对每个摄像机进行剔除 (ScriptableRenderContext.Cull),然后渲染可见对象 (ScriptableRenderContext.DrawRenderers) 的子集并处理可见光源(visibleLightsvisibleReflectionProbes)。

CullingResults 还提供了一些可辅助阴影渲染的函数(ComputeDirectionalShadowMatricesAndCullingPrimitivesComputeSpotShadowMatricesAndCullingPrimitivesComputePointShadowMatricesAndCullingPrimitives)。

变量

lightAndReflectionProbeIndexCount获取每个对象的光源和反射探针的索引数。
lightIndexCount获取每个对象的光源索引数。
reflectionProbeIndexCount获取每个对象的反射探针索引数。
visibleLights可见光源的数组。
visibleOffscreenVertexLights仍会影响可见场景顶点的屏幕外光源。
visibleReflectionProbes可见反射探针的数组。

公共函数

ComputeDirectionalShadowMatricesAndCullingPrimitives计算方向光的视图和投影矩阵以及阴影分割数据。
ComputePointShadowMatricesAndCullingPrimitives计算点光源的视图和投影矩阵以及阴影分割数据。
ComputeSpotShadowMatricesAndCullingPrimitives计算聚光灯的视图和投影矩阵以及阴影分割数据。
FillLightAndReflectionProbeIndices使用每个对象的光源索引填充计算缓冲区。
GetLightIndexMap如果 RenderPipeline 对 VisibleLight 列表进行排序或以其他方式进行修改,则需要重新映射索引,以正确使用每个对象的光源列表。
GetReflectionProbeIndexMap如果 RenderPipeline 对 VisibleReflectionProbe 列表进行排序或以其他方式进行修改,则需要重新映射索引,以正确使用每个对象的反射探针列表。
GetShadowCasterBounds返回封装了可见阴影投射物的包围盒。例如,这可用于动态调整级联范围。
SetLightIndexMap如果 RenderPipeline 对 VisibleLight 列表进行排序或以其他方式进行修改,则需要重新映射索引,以正确使用每个对象的光源列表。 如果数组的某个元素被设置为 -1,则与该元素对应的光源将被禁用。
SetReflectionProbeIndexMap如果 RenderPipeline 对 VisibleReflectionProbe 列表进行排序或以其他方式进行修改,则需要重新映射索引,以正确使用每个对象的反射探针列表。 如果数组的某个元素被设置为 -1,则与该元素对应的反射探针将被禁用。
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961