Platform SDK: DirectX |
IDirect3DDevice7::DrawIndexedPrimitiveStrided メソッドは、ストライド頂点の配列へのインデックスに基づいて、ジオメトリ プリミティブをレンダリングする。詳細情報については、「ストライド頂点フォーマット」を参照すること。
HRESULT DrawIndexedPrimitiveStrided( D3DPRIMITIVETYPE d3dptPrimitiveType, DWORD dwVertexTypeDesc, LPD3DDRAWPRIMITIVESTRIDEDDATA lpVertexArray, DWORD dwVertexCount, LPWORD lpwIndices, DWORD dwIndexCount, DWORD dwFlags );
D3DPRIMITIVETYPE の D3DPT_POINTLIST メンバにはインデックスがない。
このパラメータの使用方法は、IDirect3DDevice7::DrawPrimitive メソッドの dwVertexCount パラメータとは異なる。IDirect3DDevice7::DrawPrimitive メソッドでは、dwVertexCount パラメータは描画すべき頂点数を与えるが、このメソッドは lpVertexArray パラメータが指す配列の合計頂点数を与える。IDirect3DDevice7::DrawIndexedPrimitiveStrided を呼び出すときには、dwIndexCount パラメータで描画すべき頂点数を指定する。
成功すれば D3D_OK を返す。
失敗すれば、次のいずれかの値を返す。
D3DERR_INVALIDRAMPTEXTURE |
D3DERR_INVALIDPRIMITIVETYPE |
D3DERR_INVALIDVERTEXTYPE |
DDERR_INVALIDPARAMS |
DDERR_WASSTILLDRAWING |
レンダリングする頂点が、指定した頂点フォーマットと一致していることを確認する。パフォーマンス上の理由から、Direct3D は頂点のサイズおよびストライドと提供された柔軟な頂点フォーマットとの照合を行わない。これが一致していないと、メモリ障害が発生しやすい。
このメソッドは、頂点バッファからのレンダリングには使用せず、代わりに頂点バッファ メソッドを使用する。
このメソッドは、従来のインターフェイスで使用されたメソッドとは異なり、dwFlags パラメータで D3DDP_DONOTCLIP、D3DDP_DONOTLIGHT、および D3DDP_DONOTUPDATEEXTENTS フラグを受け取らない。これらのフラグの機能性は、現在では D3DRENDERSTATE_CLIPPING、D3DRENDERSTATE_LIGHTING、および D3DRENDERSTATE_EXTENTS レンダリング ステートによって使用できる。
このメソッドは、トランスフォームされた頂点をサポートしない。したがって、D3DFVF_XYZRHW 頂点フォーマット記述子を dwVertexTypeDesc パラメータに含めると、メソッドは失敗し、D3DERR_INVALIDVERTEXTYPE を返す。
Windows NT/2000 :Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
バージョン :DirectX 7.0 が必要。
ヘッダー : d3d.h で宣言。
IDirect3DDevice7::DrawPrimitive、IDirect3DDevice7::DrawPrimitiveStrided、IDirect3DDevice7::DrawPrimitiveVB、IDirect3DDevice7::DrawIndexedPrimitive、IDirect3DDevice7::DrawIndexedPrimitiveVB、ストライド頂点フォーマット