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 个 UAV。
D3D_SHADER_REQUIRES_MINIMUM_PRECISION 着色器要求图形驱动程序和硬件支持最低精度。 有关详细信息,请参阅 使用 HLSL 最小精度
D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS 着色器要求图形驱动程序和硬件支持扩展双精度指令。 有关详细信息,请参阅 D3D11_FEATURE_DATA_D3D11_OPTIONSExtendedDoublesShaderInstructions 成员。
D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS 着色器要求图形驱动程序和硬件支持着色器中的 msad4 内部函数。 有关详细信息,请参阅 D3D11_FEATURE_DATA_D3D11_OPTIONSSAD4ShaderInstructions 成员。
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
标头 d3d11shader.h
Library D3DCompiler_47.lib
DLL D3DCompiler_47.dll

另请参阅

ID3D11ShaderReflection