2016-08-25 19 views
0

私は基本的な3Dプログラムを作成したいと思ういくつかのチュートリアルを見てから、directx(d3d9を使用しています)、 について基本的な質問があります。directx頂点/インデックスバッファに渡す

1つの頂点バッファにモデルを描画するたびに、頂点/インデックスをコピーする必要がありますか? 複数のモデルを1つの頂点/インデックスバッファにロードすることはできますか? また、モデルごとに複数の頂点/インデックスバッファを作成する必要はありますか?あなたはIDirect3DDevice9::DrawIndexedPrimitiveを見れば

答えて

0

あなたが望むよう行うには無料です、あなたはBaseVertexIndexStartIndexを見つけるだろう、それはあなたが頂点とインデックスバッファへのオフセットすることができますので、はい、あなたは同じ緩衝液中でいくつかのジオメトリをパックすることができますこれは、呼量をSetIndicesSetStreamSourceに減らすのに便利です。頂点ストライドが変更された場合でも、後でバイトオフセットと新しいストライドを使用して呼び出す必要があります。

動的ジオメトリを処理しない限り、通常はデータをバッファに一度コピーし、フレーム全体に再利用します。

関連する問題