ID3D10Device::D rawAuto メソッド (d3d10.h)
ジオメトリ シェーダー ステージによって作成された不明なサイズのジオメトリを描画します。 「解説」を参照してください。
構文
void DrawAuto();
戻り値
なし
解説
描画 API は、レンダリング パイプラインに作業を送信します。
データが SO ステージ バッファーにストリーミングされた後、それらのバッファーを入力スロット 0 の Input アセンブラー ステージに再びバインドできます。DrawAuto は、バッファーに書き込まれたデータの量をアプリケーションが知らなくてもそれらを描画します。 SO ステージ バッファーに書き込まれるデータ量の測定は、データがストリーミングされるときに内部的に維持されます。つまり、CPU は、入力データとしてストリーミングされたデータを再バインドする前に、測定をフェッチする必要はありません。 この量は内部的に追跡されますが、入力レイアウトを使用して SO ステージ バッファー内のデータの形式を記述し、バッファーが再び入力アセンブラーにバインドされたときにレイアウトを使用できるようにする必要があります。
次の図は、DrawAuto プロセスを示しています。
DrawAuto を呼び出しても、再び入力としてバインドされたストリーミング出力バッファーの状態は変更されません。
DrawAuto は、スロット 0 の IA ステージへの入力として 1 つの入力バッファーをバインドして描画する場合にのみ機能します。 アプリケーションでは、バインド フラグ、 D3D10_BIND_VERTEX_BUFFER、D3D10_BIND_STREAM_OUTPUT の両方を使用して SO バッファー リソースを作成 する必要があります。
この API では、インデックス作成やインスタンス化はサポートされていません。
アプリケーションがストリーミング出力バッファーのサイズを取得する必要がある場合は、 D3D10_QUERY_SO_STATISTICSを使用してストリーミング出力に関する統計を照会できます。
DrawAuto の使用例は、 ParticlesGS サンプル と PipesGS サンプルにあります。
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | d3d10.h |
Library | D3D10.lib |