Предотвращение нежелательных srv шейдера пикселей NULL

Приложения Direct3D 11, которые выполняются на графическом оборудовании Direct3D 9, могут непреднамеренно привести к тому, что драйвер получает представления ресурсов шейдера NULL , даже если приложения привязывают ненулевых SRV к этапу пиксельного шейдера. Такая ситуация может возникнуть только в том случае, если приложения уничтожают SRV во время выполнения. В этом разделе описывается, как обойти драйвер, получающий представления ресурсов шейдера NULL , даже если не null SRV привязаны к этапу шейдера пикселей.

Чтобы предотвратить получение драйвером нежелательных значений SRV null , приложения должны вызывать ID3D11DeviceContext::P SSetShaderResources , чтобы отменить установку всех SRV перед каждым вызовом ID3D11DeviceContext::P SSetShader. Однако если приложения не уничтожают SRV до окончания выполнения кода, им не нужно отменять их.

В разделе Справочник по 10Level9 перечислены различия между поведением различных методов ID3D11Device и ID3D11DeviceContext на различных уровнях компонентов 10Level9.

Direct3D 11 на оборудовании нижнего уровня