Version: 2021.2
public void DrawProcedural (Matrix4x4 matrix, Material material, int shaderPass, MeshTopology topology, int vertexCount, int instanceCount, MaterialPropertyBlock properties);
public void DrawProcedural (Matrix4x4 matrix, Material material, int shaderPass, MeshTopology topology, int vertexCount, int instanceCount);
public void DrawProcedural (Matrix4x4 matrix, Material material, int shaderPass, MeshTopology topology, int vertexCount);

参数

matrix 要使用的变换矩阵。
material 要使用的材质。
shaderPass 要使用着色器的哪个通道(或选择 -1,表示所有通道)。
topology 程序化几何体的拓扑。
vertexCount 要渲染的顶点数。
instanceCount 要渲染的实例数。
properties 在渲染之前应用的其他材质属性。请参阅 MaterialPropertyBlock

描述

添加“绘制程序化几何体”命令。

当命令缓冲区执行时,将在 GPU 中执行绘制调用,没有任何顶点或索引缓冲区。这主要在 Shader Model 4.5 级别的硬件中有用,其中着色器可以从 ComputeBuffer 缓冲区读取任意数据。

在顶点着色器中,通常使用 SV_VertexID 和 SV_InstanceID 输入变量以从一些缓冲区提取数据。

另请参阅:DrawProceduralIndirectMaterialPropertyBlockGraphics.DrawProcedural


public void DrawProcedural (GraphicsBuffer indexBuffer, Matrix4x4 matrix, Material material, int shaderPass, MeshTopology topology, int indexCount, int instanceCount, MaterialPropertyBlock properties);
public void DrawProcedural (GraphicsBuffer indexBuffer, Matrix4x4 matrix, Material material, int shaderPass, MeshTopology topology, int indexCount, int instanceCount);
public void DrawProcedural (GraphicsBuffer indexBuffer, Matrix4x4 matrix, Material material, int shaderPass, MeshTopology topology, int indexCount);

参数

matrix 要使用的变换矩阵。
material 要使用的材质。
shaderPass 要使用着色器的哪个通道(或选择 -1,表示所有通道)。
topology 程序化几何体的拓扑。
indexCount 要渲染的索引数量。
instanceCount 要渲染的实例数。
indexBuffer 用于将顶点提交到 GPU 的索引缓冲区。
properties 在渲染之前应用的其他材质属性。请参阅 MaterialPropertyBlock

描述

添加“绘制程序化几何体”命令。

当命令缓冲区执行时,将在 GPU 中执行绘制调用,没有顶点缓冲区。这主要在 Shader Model 4.5 级别的硬件中有用,其中着色器可以从 ComputeBuffer 缓冲区读取任意数据。

在顶点着色器中,通常使用 SV_VertexID 和 SV_InstanceID 输入变量以从一些缓冲区提取数据。

另请参阅:DrawProceduralIndirectMaterialPropertyBlockGraphics.DrawProcedural