Метод ID3D11ShaderReflection::GetRequiresFlags (d3d11shader.h)
Возвращает группу флагов, указывающих требования шейдера.
Синтаксис
UINT64 GetRequiresFlags();
Возвращаемое значение
Тип: UINT64
Значение типа , содержащее сочетание одного или нескольких флагов требований шейдера; каждый флаг указывает требование к шейдеру. Значение по умолчанию 0 означает, что требования отсутствуют.
Флаг требования шейдера | Описание |
---|---|
D3D_SHADER_REQUIRES_DOUBLES | Для шейдера требуется, чтобы графический драйвер и оборудование поддерживали двойной тип данных. Дополнительные сведения см. в разделе D3D11_FEATURE_DATA_DOUBLES. |
D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL | Для шейдера требуется ранний трафарет глубины. |
D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE | Для шейдера требуются неупорядоченные представления доступа (UAV) на каждом этапе конвейера. |
D3D_SHADER_REQUIRES_64_UAVS | Для шейдера требуется 64 БПЛА. |
D3D_SHADER_REQUIRES_MINIMUM_PRECISION | Для поддержки минимальной точности шейдеру требуется графический драйвер и оборудование. Дополнительные сведения см. в разделе Использование минимальной точности HLSL. |
D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS | Шейдер требует, чтобы графический драйвер и оборудование поддерживали расширенные инструкции double. Дополнительные сведения см. в элементе ExtendedDoublesShaderInstructionsD3D11_FEATURE_DATA_D3D11_OPTIONS. |
D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS | Шейдер требует, чтобы графический драйвер и оборудование поддерживали встроенную функцию msad4 в шейдерах. Дополнительные сведения см. в разделе ЭЛЕМЕНТ SAD4ShaderInstructionsD3D11_FEATURE_DATA_D3D11_OPTIONS. |
D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING | Шейдер требует, чтобы графический драйвер и оборудование поддерживали поддержку тени Direct3D 9. Дополнительные сведения см. в разделе D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT. |
D3D_SHADER_REQUIRES_TILED_RESOURCES | Шейдер требует, чтобы графический драйвер и оборудование поддерживали мозаичные ресурсы. Дополнительные сведения см. в разделе GetResourceTiling. |
Комментарии
Вот как заголовок D3D11Shader.h определяет флаги требований шейдера:
#define D3D_SHADER_REQUIRES_DOUBLES 0x00000001
#define D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL 0x00000002
#define D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE 0x00000004
#define D3D_SHADER_REQUIRES_64_UAVS 0x00000008
#define D3D_SHADER_REQUIRES_MINIMUM_PRECISION 0x00000010
#define D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS 0x00000020
#define D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS 0x00000040
#define D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING 0x00000080
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | d3d11shader.h |
Библиотека | D3DCompiler_47.lib |
DLL | D3DCompiler_47.dll |