さまざまなタイプの情報を表示するための複数の「パネル」からなるC++ DirectX 10アプリケーションを開始する準備をしています。 1つのRenderTargetViewで複数のビューポートを試してみました。しかし、一度に1つのビューポートをクリアする方法については、明確な答えは見つかりません。私のアプリケーションのこれらのパネル(ビューポート)は、いくつかの領域で重複するので、下から上への描画は、上から見えないように、それぞれのビューポートをクリアするように、下から上に描画したいと考えています。高いもの。 DirectX 9では、現在設定されているビューポートだけをクリアするClear()メソッドがデバイスオブジェクトにあるようです。 DirectX 10は描画領域全体をクリアするClearRenderTargetView()を使用しており、DirectX 9のやり方と同等のオプションは見つかりません。DirectX 10の単一ビューポートをクリアする
描画領域内のビューポート/矩形のみをクリアする方法はありますか?ある人は、そのスペースにクワッドを描く唯一の方法があると推測しました。別の可能性は、各パネルに別々のRenderTargetViewを持たせることですが、別の深さ/ステンシルバッファなどの余分なリソースを必要とするので、避けたいと思います(それが私の誤解でない限り)。
ご協力いただきますようお願い申し上げます。ありがとう!
はい、役立ちます。私は、複数のレンダリングターゲットビューを使用していくつかの読書を行います。レンダリングターゲットビューを使用してウィンドウの異なる領域に描画することができれば、ターゲットビューとビューポートの両方がレンダリングされるのはなぜか分かりません。 –
"すべてのレンダリングターゲットは、すべての寸法(幅と高さ、3Dの場合は深さ、*配列タイプの場合は配列サイズ)で同じサイズでなければなりません。 –
これはあなたがリンクした同じ記事のものです。だから私はこれが私の望むものだとは思わない、私のユーザーインターフェースのパネルはサイズが違うだろうから。 –