IDirect3DVertexBuffer7::ProcessVerticesStrided
IDirect3DVertexBuffer::ProcessVerticesStrided メソッドは、未トランスフォームの頂点をトランスフォーム済みまたは最適化済み頂点バッファにする。
HRESULT ProcessVerticesStrided(
DWORD dwVertexOp,
DWORD dwDestIndex,
DWORD dwCount,
LPD3DDRAWPRIMITIVESTRIDEDDATA lpStrideData,
DWORD dwVertexTypeDesc,
LPDIRECT3DDEVICE7 lpD3DDevice,
DWORD dwFlags
);
パラメータ
- dwVertexOp
- 元のバッファから転送された頂点をメソッドが処理する方法を定義するフラグ。次のフラグの任意の組み合わせを指定することができる。
- D3DVOP_CLIP
- 頂点をトランスフォームし、視錐台の外側に出るあらゆる頂点をクリップする。このフラグは、(D3DDP_DONOTCLIP フラグで作成されたなどの) クリッピング情報を含まない頂点バッファには使用できない。
- D3DVOP_EXTENTS
- 頂点をトランスフォームし、頂点がレンダリングされたら、スクリーン矩形の範囲を更新する。このフラグを使用すると潜在的にパフォーマンスが向上する可能性があるが、IDirect3DDevice7::GetClipStatus が返す範囲に対して、頂点のレンダリングの際にその頂点を考慮した更新が行われない。
- D3DVOP_LIGHT
- 頂点をライティングする。
- D3DVOP_TRANSFORM
- ワールド行列、ビュー行列、射影行列を使って頂点をトランスフォームする。このフラグは常に設定する必要がある。
- dwDestIndex
- 処理の後、頂点の配置先となる頂点バッファ (このバッファ) へのインデックス。
- dwCount
- 元のバッファにある、処理する頂点の数。
- lpStrideData
- このプリミティブの頂点成分のポインタおよびメモリ ストライドを格納する D3DDRAWPRIMITIVESTRIDEDDATA 構造体のアドレス。
- dwVertexTypeDesc
- 頂点フォーマットを記述する柔軟な頂点フォーマット フラグの組み合わせ。
- lpD3DDevice
- 頂点のトランスフォームに使用するデバイスの IDirect3DDevice7 インターフェイスのアドレス。
- dwFlags
- 処理オプション。デフォルト処理に対してはこのパラメータを 0 に設定する。D3DPV_DONOTCOPYDATA に設定すると、現在の頂点の処理に無関係な頂点データをコピー先バッファにコピーするのを防ぐことができる。詳細については、「頂点の処理」を参照すること。
戻り値
成功すれば D3D_OK を返す。
失敗すれば、次のいずれかの値を返す。
注意
dwVertexOp パラメータには常に D3DVOP_TRANSFORM フラグを含めること。このフラグを含めていないと、メソッドが失敗し、DDERR_INVALIDPARAMS を返す。
このメソッドは、IDirect3DVertexBuffer7 インターフェイスと共に導入された。
Windows NT/2000 :Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
バージョン :DirectX 7.0 が必要。
ヘッダー : d3d.h で宣言。
参照
IDirect3DVertexBuffer7::ProcessVertices、頂点の処理、頂点バッファ