不要な NULL ピクセル シェーダーの SRV の防止

Direct3D 9 グラフィックス ハードウェア上で実行される Direct3D 11 アプリケーションでは、アプリケーションが NULL 以外の SRV をピクセル シェーダー ステージにバインドする場合でも、ドライバーが誤って NULL シェーダー リソース ビュー (SRV) を受け取る可能性があります。 この状況は、アプリケーションの実行中に SRV が破棄された場合にのみ発生する可能性があります。 このトピックでは、 NULL 以外の SRV がピクセル シェーダー ステージにバインドされている場合でも、NULL シェーダー リソース ビュー (SRV) を受け取るドライバーを回避する方法について説明します。

ドライバーが不要な NULL SRV を受信しないようにするには、アプリケーションで ID3D11DeviceContext::P SSetShaderResources を呼び出して、 ID3D11DeviceContext::P SSetShader を呼び出す前にすべての SRV の設定を解除する必要があります。 ただし、アプリケーションがコードの実行が終了するまで SRV を破棄しない場合は、SRV の設定を解除する必要はありません。

「10Level9 リファレンス」セクションでは、さまざまな ID3D11Device メソッドと ID3D11DeviceContext メソッドがさまざまな 10Level9 機能レベルでどのように動作するかの違いを示します。

ダウンレベル ハードウェア上の Direct3D 11