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 列挙型のメンバー。 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::DrawPrimitive