2012-04-11 28 views
1

私のアプリケーションは20個以上のビューポートを処理しなければならず、16個しか許可されていません。ありがたいことに、全体のシーンは、ビューポートが10未満の頂点を「リーク」させない複数の部分に分割することができます。Direct3D 11ではRSSetViewportsが非同期または同期を呼び出していますか?

ビューポートアレイレンダリングの途中で(ただし許可されています)。私の推測は、それが* と呼ばれる限り、RS * SetViewportsは非同期でなければならず、レンダリングの途中で安全に呼び出すことができるということです。しかし、私は何の証拠も見つけられませんでした。

答えて

2

はいRSSetViewportsはGPUコマンドバッファに書き込まれ、非同期に実行されるため、フレームごとに何度も設定することは問題ありません.GPUを待っている間CPUをブロックしません実行が終了する。

状態はありません。マップ呼び出し(D3D11_MAP_FLAG_DO_NOT_WAITなし)などの明示的な操作だけがブロックされ、GPUを待機します。

関連する問題