ID3D11DeviceContext::DrawInstanced

インデックス付けされていないが、インスタンス化されているプリミティブを描画します。

void 
DrawInstanced(
  UINT VertexCountPerInstance,
  UINT InstanceCount,
  UINT StartVertexLocation,
  UINT StartInstanceLocation
);

パラメータ

  • VertexCountPerInstance
    描画する頂点の数です。
  • InstanceCount
    描画するインスタンスの数です。
  • StartVertexLocation
    最初の頂点のインデックスです。
  • StartInstanceLocation
    頂点バッファーからインスタンス単位のデータを読み取る前に、各インデックスに加算する値です。

戻り値

返されるものはありません。

解説 

描画 API は、処理をレンダリング パイプラインに送信します。

インスタンス化の際に、1 つのシーン内で同一のジオメトリを再使用して複数のオブジェクトを描画することによって、パフォーマンスが向上する可能性があります。インスタンス化の例として、位置とカラーを変えながら 1 つのオブジェクトを複数回描画することが挙げられます。

通常、インスタンス化された描画関数呼び出しの頂点データは、パイプラインにバインドされた頂点バッファーから取得されます。ただし、System-Value セマンティクス (SV_InstanceID) で特定してインスタンス化したデータが含まれるシェーダーの頂点データを指定することもできます。

要件

ヘッダー: D3D11.h 宣言

ライブラリ: D3D11.lib 内容

関連項目

ID3D11DeviceContext