Microsoft DirectX 8.0 (C++)

IDirect3DDevice8::DrawPrimitiveUP

ユーザー メモリ ポインタで指定されたデータを、指定されたタイプのジオメトリ プリミティブのシーケンスとしてレンダリングする。

HRESULT DrawPrimitiveUP(
  D3DPRIMITIVETYPE PrimitiveType,
  UINT PrimitiveCount,
  CONST void* pVertexStreamZeroData,
  UINT VertexStreamZeroStride
);

パラメータ

PrimitiveType
[in] D3DPRIMITIVETYPE 列挙型のメンバ。レンダリングするプリミティブの種類を記述する。
PrimitiveCount
[in] レンダリングするプリミティブの数。プリミティブの許容最大数は、D3DCAPS8 構造体の MaxPrimitiveCount メンバをチェックして決定される。
pVertexStreamZeroData
[in] 頂点ストリームをゼロにするために使用する頂点データのユーザー メモリ ポインタ。
VertexStreamZeroStride
[in] 各頂点のデータ間のストライド (バイト単位)。

戻り値

成功した場合は、D3D_OK を返す。

失敗した場合は、D3DERR_INVALIDCALL を返す。

注意

このメソッドは、頂点データを頂点バッファに格納できないアプリケーションで使用する。このメソッドは単一の頂点ストリームのみをサポートする。この呼び出しは、頂点ストリームに提供された頂点データのポインタとストライドをゼロにする。ストリーム ゼロ以外の頂点ストリームを参照するカレント頂点シェーダを宣言することはできない (or を宣言するとエラーとなる)。

DrawPrimitiveUP の呼び出しの後、IDirect3DDevice8::GetStreamSource で参照されるストリーム ゼロの設定は、NULL に設定される。

DrawPrimitiveUP に渡される頂点データは呼出し後に存続する必要はない。Direct3D は呼び出しから戻った時点でそのデータへのアクセスを完了している。

動作環境

  ヘッダー : d3d8.h で宣言。
  インポート ライブラリ : D3d8.lib を使用。

参照

IDirect3DDevice8::DrawIndexedPrimitiveUPIDirect3DDevice8::SetStreamSourceプリミティブのレンダリング