Experimental: this API is experimental and might be changed or removed in the future.

CullResults

struct in UnityEngine.Experimental.Rendering

切换到手册

描述

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

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

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

变量

visibleLights可见光源的数组。
visibleOffscreenVertexLights仍会影响可见场景顶点的屏幕外光源。
visibleReflectionProbes可见反射探针的数组。
visibleRenderers可见渲染器。

公共函数

ComputeDirectionalShadowMatricesAndCullingPrimitives计算方向光的视图和投影矩阵以及阴影分割数据。
ComputePointShadowMatricesAndCullingPrimitives计算点光源的视图和投影矩阵以及阴影分割数据。
ComputeSpotShadowMatricesAndCullingPrimitives计算聚光灯的视图和投影矩阵以及阴影分割数据。
FillLightIndices使用每个对象的光源索引填充计算缓冲区。
GetLightIndexMap如果 RenderPipeline 对 VisibleLight 列表进行排序或以其他方式进行修改,则需要重新映射索引,以正确使用每个对象的光源列表。
GetLightIndicesCount获取每个对象的光源索引数。
GetShadowCasterBounds返回封装了可见阴影投射物的包围盒。例如,这可用于动态调整级联范围。
SetLightIndexMap如果 RenderPipeline 对 VisibleLight 列表进行排序或以其他方式进行修改,则需要重新映射索引,以正确使用每个对象的光源列表。 如果数组的某个元素被设置为 -1,则与该元素对应的光源将被禁用。

静态函数

Cull对 Camera 执行剔除。
GetCullingParameters获取摄像机的剔除参数。