IDirect3DDevice9::GetStreamSource メソッド

IDirect3DDevice9::GetStreamSource メソッド

指定されたデータ ストリームにバインドされている頂点バッファを取得する。

構文

HRESULT GetStreamSource(      
    UINT StreamNumber,
    IDirect3DVertexBuffer9 **ppStreamData,
    UINT *pOffsetInBytes,
    UINT *pStride
);

パラメータ

  • StreamNumber
    [in] データ ストリームを指定する。範囲は、0 から、ストリームの最大数から 1 を引いた値までである。
  • ppStreamData
    [in, out] 指定したデータ ストリームにバインドされている頂点バッファを表す IDirect3DVertexBuffer9 インターフェイスへのポインタのアドレス。
  • pOffsetInBytes
    [out] ストリーム先頭から頂点データ先頭までのオフセットが格納されたポインタ。オフセットはバイト単位で示される。「注意」を参照すること。
  • pStride
    [out] 返された成分のストライド (バイト単位) へのポインタ。「注意」を参照すること。

戻り値

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

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

注意

ストリームは成分データの一様な配列として定義されており、各成分は、位置・法線・色などの単一エンティティを表す 1 つ以上の要素で構成されている。

柔軟な頂点フォーマット (FVF) 頂点シェーダを使う場合、ストリーム頂点ストライドは、FVF から計算された頂点サイズと一致していなければならない。この宣言を使う場合、ストライドは、宣言から計算されたストリーム サイズ以上でなければならない。

  このメソッドを呼び出すと、IDirect3DVertexBuffer9 インターフェイスについての内部参照カウントが増加する。この IDirect3DVertexBuffer9 インターフェイスを使い終えたときに IUnknown::Release を呼び出さないと、メモリ リークが発生する。

参照

IDirect3DDevice9::SetStreamSource