Поделиться через


структура D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT (d3d11.h)

Примечание Эта структура поддерживается средой выполнения Direct3D 11.1, которая доступна в Windows 8 и более поздних версиях операционных систем.
 
Описывает поддержку тени Direct3D 9 в текущем графическом драйвере.

Синтаксис

typedef struct D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT {
  BOOL SupportsDepthAsTextureWithLessEqualComparisonFilter;
} D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT;

Члены

SupportsDepthAsTextureWithLessEqualComparisonFilter

Указывает, поддерживает ли драйвер функцию теневого режима с режимом фильтрации сравнения, равным меньше или равно. Среда выполнения устанавливает для этого элемента значение TRUE для оборудования на уровнях функций Direct3D 10 и более поздних версий. Для оборудования на Direct3D 9.3 и более низких уровнях компонентов среда выполнения устанавливает для этого элемента значение TRUE , только если оборудование и драйвер поддерживают функцию теневого копирования; в противном случае — FALSE.

Комментарии

Тени являются важным элементом в реалистичных трехмерных сценах. Для отрисовки теней можно использовать метод буфера теней. Основной принцип метода заключается в использовании буфера глубины для хранения сведений о глубине сцены с точки зрения источника света, а затем сравнить каждую точку, отрисоченную в сцене, с этим буфером, чтобы определить, находится ли она в тени.

Для отрисовки объектов в сцене с тенями на них создаются объекты состояния выборки с установленным фильтром сравнения и режимом сравнения (ComparisonFunc) значение LessEqual. Вы также можете задать адресацию BorderColor для этого выборки глубины, хотя BorderColor обычно не допускается на уровнях компонентов 9.1 и 9.2. Используя цвет границы и выбрав значение 0,0 или 1,0 в качестве цвета границы, можно управлять тем, будут ли области от края карты тени всегда находиться в тени или никогда в тени соответственно. Вы можете управлять качеством фильтра теней с помощью параметров фильтра Mag и Min в выборке сравнения. Точечная выборка создает тени с краями без сглаживания. Параметры выборки линейного фильтра приведут к более высокому качеству теней, но могут повлиять на производительность некоторых устройств, оптимизированных для питания.

Примечание Если вы используете отдельный параметр для параметров фильтра Mag и Min, будет получен неопределенный результат. Анизотропная фильтрация не поддерживается. Выбор фильтра MIP не имеет значения, так как уровень компонентов 9.x не допускает буферы глубины mipmapped.
 
Примечание На уровне компонентов 9.x невозможно скомпилировать шейдер с помощью встроенных функций SampleCmp и SampleCmpLevelZero с использованием более старых версий компилятора. Например, нельзя использовать компилятор fxc.exe , поставляемый с пакетом SDK DirectX, или функции D3DCompile** (например , D3DCompileFromFile), реализованные в D3DCompiler_43.dll и более ранних версиях. Эти встроенные функции на уровне компонентов 9.x поддерживаются только в компиляторе fxc.exe, поставляемом с пакетом SDK для Windows 8 и более поздних версий, а также с функциями D3DCompile**, реализованными в D3DCompiler_44.dll и более поздних версиях. Но эти встроенные функции присутствуют в моделях шейдеров для уровней компонентов выше 9.x.
 

Требования

Требование Значение
Минимальная версия клиента Windows 8 и обновление платформы для Windows 7 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2012 и обновление платформы для Windows Server 2008 R2 [классические приложения | Приложения UWP]
Верхняя часть d3d11.h

См. также раздел

Основные структуры

D3D11_FEATURE