Version: 2020.1

Graphics.DrawMeshInstancedProcedural

切换到手册
public static void DrawMeshInstancedProcedural (Mesh mesh, int submeshIndex, Material material, Bounds bounds, int count, MaterialPropertyBlock properties, Rendering.ShadowCastingMode castShadows, bool receiveShadows, int layer, Camera camera, Rendering.LightProbeUsage lightProbeUsage, LightProbeProxyVolume lightProbeProxyVolume);

参数

mesh 要绘制的 Mesh
submeshIndex 要绘制网格的哪个子集。这只适用于由若干种材质构成的网格。
material 要使用的 Material
bounds 围绕要绘制的实例的包围体。
count 要绘制的实例数。
properties 要应用的其他材质属性。请参阅 MaterialPropertyBlock
castShadows 网格是否应投射阴影?
receiveShadows 网格是否应接受阴影?
layer 要使用的 Layer
camera 如果为 /null/(默认值),将在所有摄像机中绘制网格。否则,仅在给定摄像机中绘制网格。
lightProbeUsage 实例的 LightProbeUsage

描述

使用 GPU 实例化可多次绘制同一网格。 这与 Graphics.DrawMeshInstancedIndirect 相似,区别是当从脚本中了解实例数量时,使用此方法可直接提供数量,而不是通过 ComputeBuffer。

要使用光照探针渲染实例,请通过 MaterialPropertyBlock 提供光照探针数据,并使用 LightProbeUsage.CustomProvided 指定 /lightProbeUsage/。有关详细信息,请参阅 LightProbes.CalculateInterpolatedLightAndOcclusionProbes