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

パラメーター

matrix 使用するトランスフォーム(変換)マトリックス
material 使用するマテリアル
shaderPass 使用するシェーダーのパス (あるいはすべてに -1 を渡します。)
topology プロシージャルジオメトリのトポロジー
vertexCount 描画する頂点数
instanceCount レンダリングするインスタンス数
properties レンダリングの前にだけ適用するマテリアルプロパティーを追加します。 MaterialPropertyBlock を参照してください。

説明

"draw procedural geometry" コマンドを追加。

コマンドバッファを実行すると頂点やインデックスのバッファなしで GPU で Draw 呼び出しが行われます。シェーダーが ComputeBuffer バッファから任意のデータを読むことができるので DirectX 11 のハードウェアに近いローレベルで便利です。

頂点シェーダーで、通常、いくつかのバッファからデータをフェッチするのに SV_VertexID や SV_InstanceID の入力変数を使用します。

See Also: DrawProceduralIndirect, MaterialPropertyBlock, Graphics.DrawProcedural.