次の方法で共有


IDirect3DDevice9::D rawIndexedPrimitive メソッド (d3d9.h)

インデックス作成に基づいて、指定したジオメトリ プリミティブを頂点の配列にレンダリングします。

構文

HRESULT DrawIndexedPrimitive(
  [in] D3DPRIMITIVETYPE unnamedParam1,
  [in] INT              BaseVertexIndex,
  [in] UINT             MinVertexIndex,
  [in] UINT             NumVertices,
  [in] UINT             startIndex,
  [in] UINT             primCount
);

パラメーター

[in] unnamedParam1

型: D3DPRIMITIVETYPE

レンダリングするプリミティブの型を記述する D3DPRIMITIVETYPE 列挙型のメンバー。 D3DPT_POINTLISTは、このメソッドではサポートされていません。 「解説」を参照してください。

[in] BaseVertexIndex

型: INT

頂点バッファーの先頭から最初の頂点までのオフセット。 「シナリオ 4」を参照してください。

[in] MinVertexIndex

型: UINT

この呼び出し中に使用される頂点の最小頂点インデックス。 これは、BaseVertexIndex に対する 0 から始まるインデックスです。

[in] NumVertices

型: UINT

この呼び出し中に使用された頂点の数。 最初の頂点は、インデックス (BaseVertexIndex + MinIndex) にあります。

[in] startIndex

型: UINT

頂点バッファーにアクセスするときに使用する最初のインデックスのインデックス。 StartIndex から始まり、頂点バッファーから頂点のインデックスを作成します。

[in] primCount

型: UINT

レンダリングするプリミティブの数。 使用される頂点の数は、プリミティブ数とプリミティブ型の関数です。 許可されるプリミティブの最大数は、 D3DCAPS9 構造体の MaxPrimitiveCount メンバーを確認することによって決定されます。

戻り値

型: HRESULT

メソッドが成功した場合、戻り値はD3D_OK。 メソッドが失敗した場合、戻り値は次のようになります: D3DERR_INVALIDCALL。

解説

このメソッドは、現在のデータ入力ストリームのセットからインデックス付きプリミティブを描画します。 MinIndex とインデックス ストリーム内のすべてのインデックスは、BaseVertexIndex に対して相対的です。

MinIndex パラメーターと NumVertices パラメーターは、各 IDirect3DDevice9::D rawIndexedPrimitive 呼び出しに使用される頂点インデックスの範囲を指定します。 これらは、これらの頂点にインデックスを付ける前に、一連の頂点を処理することによって、インデックス付きプリミティブの頂点処理を最適化するために使用されます。 この呼び出し中に使用されるインデックスで、この範囲外の頂点を参照することは無効です。

インデックス配列が設定されていない場合、IDirect3DDevice9::D rawIndexedPrimitive は失敗します。

D3DPRIMITIVETYPE 列挙型のD3DPT_POINTLIST メンバーはサポートされておらず、このメソッドの有効な型ではありません。

レガシ アプリケーションを Direct3D 9 に変換する場合は、固定関数パイプラインを使用するために IDirect3DDevice9::SetFVF に呼び出しを追加するか、 IDirect3DDevice9::SetVertexDeclaration で頂点シェーダーを使用してから描画呼び出しを行う必要があります。

要件

   
対象プラットフォーム Windows
ヘッダー d3d9.h (D3D9.h を含む)
Library D3D9.lib

関連項目

IDirect3DDevice9

IDirect3DDevice9::DrawPrimitive

インデックス バッファー (Direct3D 9)

頂点バッファーとインデックス バッファーからのレンダリング (Direct3D 9)

頂点バッファー (Direct3D 9)