ストリーム ソースの設定 (Direct3D 9)
IDirect3DDevice9::SetStreamSource メソッドは、頂点バッファーをデバイス データ ストリームにバインドし、頂点データとプリミティブ処理関数をフィードするいくつかのデータ ストリーム ポートの 1 つの間に関連付けを作成します。 ストリーム データへの実際の参照は、 IDirect3DDevice9::D rawPrimitive などの描画メソッドが呼び出されるまで発生しません。
ストリームは、コンポーネント データの均一な配列として定義されます。各コンポーネントは、位置、法線、色などの 1 つのエンティティを表す 1 つ以上の要素で構成されます。 Stride パラメーターは、コンポーネントのサイズをバイト単位で指定します。
次のコードは、ストリーム ソースを設定し、その内容を描画する方法を示しています。 g_pVB変数は、頂点データを含む LPDIRECT3DVERTEXBUFFER9 です。
if( SUCCEEDED( g_pd3dDevice->BeginScene() ) )
{
// Setup the world, view, and projection matrices
SetupMatrices();
// Render the vertex buffer contents
g_pd3dDevice->SetStreamSource( 0, g_pVB, 0, sizeof(CUSTOMVERTEX) );
g_pd3dDevice->SetFVF( D3DFVF_CUSTOMVERTEX );
g_pd3dDevice->DrawPrimitive( D3DPT_TRIANGLESTRIP, 0, 1 );
// End the scene
g_pd3dDevice->EndScene();
}
このコードの詳細については、次のチュートリアルを参照してください。 チュートリアル 3: マトリックスの使用
関連トピック