> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# D3D12_FEATURE

> 定义指定要查询的 Direct3D 12 功能或功能集的常量。

定义指定要查询的 Direct3D 12 功能或功能集的常量。当你想查询适配器对某项功能的支持级别时，将其中一个值传递给 [ID3D12Device::CheckFeatureSupport](/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_checkfeaturesupport_public)。

## 语法

```cpp theme={null}
typedef enum D3D12_FEATURE
{
    D3D12_FEATURE_D3D12_OPTIONS = 0,
    D3D12_FEATURE_ARCHITECTURE = 1,
    D3D12_FEATURE_FEATURE_LEVELS = 2,
    D3D12_FEATURE_FORMAT_SUPPORT = 3,
    D3D12_FEATURE_MULTISAMPLE_QUALITY_LEVELS = 4,
    D3D12_FEATURE_FORMAT_INFO = 5,
    D3D12_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT = 6,
    D3D12_FEATURE_SHADER_MODEL = 7,
    D3D12_FEATURE_D3D12_OPTIONS1 = 8,
    D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_SUPPORT = 10,
    D3D12_FEATURE_ROOT_SIGNATURE = 12,
    D3D12_FEATURE_ARCHITECTURE1 = 16,
    D3D12_FEATURE_D3D12_OPTIONS2 = 18,
    D3D12_FEATURE_SHADER_CACHE = 19,
    D3D12_FEATURE_COMMAND_QUEUE_PRIORITY = 20,
    D3D12_FEATURE_D3D12_OPTIONS3 = 21,
    D3D12_FEATURE_EXISTING_HEAPS = 22,
    D3D12_FEATURE_D3D12_OPTIONS4 = 23,
    D3D12_FEATURE_SERIALIZATION = 24,
    D3D12_FEATURE_CROSS_NODE = 25,
    D3D12_FEATURE_D3D12_OPTIONS5 = 27,
    D3D12_FEATURE_DISPLAYABLE = 0,
    D3D12_FEATURE_D3D12_OPTIONS6 = 30,
    D3D12_FEATURE_QUERY_META_COMMAND = 31,
    D3D12_FEATURE_D3D12_OPTIONS7 = 32,
    D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_TYPE_COUNT = 33,
    D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_TYPES = 34,
    D3D12_FEATURE_D3D12_OPTIONS8 = 36,
    D3D12_FEATURE_D3D12_OPTIONS9 = 37,
    D3D12_FEATURE_D3D12_OPTIONS10 = 0,
    D3D12_FEATURE_D3D12_OPTIONS11 = 0
} D3D12_FEATURE
```

## 常量

| 常量                                                        | 说明                                                                                                                                                                                                                                                                                                                                                                                                       |
| --------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| D3D12\_FEATURE\_D3D12\_OPTIONS                            | 指示查询基本 Direct3D 12 功能选项的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS](/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options_public)。                                                                                                                                                                                                                                               |
| D3D12\_FEATURE\_ARCHITECTURE                              | 指示查询适配器的架构详细信息，以便应用程序可以更好地针对某些适配器属性进行优化。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_ARCHITECTURE](/reference/graphics/d3d12/structs/d3d12_feature_data_architecture_public)。  <div class="alert">**注意**  此值已被 **D3D\_FEATURE\_DATA\_ARCHITECTURE1** 值取代。如果应用程序面向 Windows 10 版本 1703（创意者更新）或更高版本，请改用 **D3D\_FEATURE\_DATA\_ARCHITECTURE1** 值。</div> <div> </div>                                                    |
| D3D12\_FEATURE\_FEATURE\_LEVELS                           | 指示查询支持的[功能级别](https://learn.microsoft.com/en-us/windows/win32/direct3d11/overviews-direct3d-11-devices-downlevel-intro)信息。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_FEATURE\_LEVELS](/reference/graphics/d3d12/structs/d3d12_feature_data_feature_levels_public)。                                                                                                                                                |
| D3D12\_FEATURE\_FORMAT\_SUPPORT                           | 指示查询当前图形驱动程序针对给定格式支持的资源。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_FORMAT\_SUPPORT](/reference/graphics/d3d12/structs/d3d12_feature_data_format_support_public)。                                                                                                                                                                                                                                                  |
| D3D12\_FEATURE\_MULTISAMPLE\_QUALITY\_LEVELS              | 指示查询给定格式和采样计数的图像质量级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_MULTISAMPLE\_QUALITY\_LEVELS](/reference/graphics/d3d12/structs/d3d12_feature_data_multisample_quality_levels_public)。                                                                                                                                                                                                                            |
| D3D12\_FEATURE\_FORMAT\_INFO                              | 指示查询 DXGI 数据格式。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_FORMAT\_INFO](/reference/graphics/d3d12/structs/d3d12_feature_data_format_info_public)。                                                                                                                                                                                                                                                                 |
| D3D12\_FEATURE\_GPU\_VIRTUAL\_ADDRESS\_SUPPORT            | 指示查询 GPU 的虚拟地址空间限制。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_GPU\_VIRTUAL\_ADDRESS\_SUPPORT](/reference/graphics/d3d12/structs/d3d12_feature_data_gpu_virtual_address_support_public)。                                                                                                                                                                                                                           |
| D3D12\_FEATURE\_SHADER\_MODEL                             | 指示查询支持的着色器模型。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_SHADER\_MODEL](/reference/graphics/d3d12/structs/d3d12_feature_data_shader_model_public)。                                                                                                                                                                                                                                                                 |
| D3D12\_FEATURE\_D3D12\_OPTIONS1                           | 指示查询对 HLSL 6.0 波形操作的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS1](/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options1_public)。                                                                                                                                                                                                                                                 |
| D3D12\_FEATURE\_PROTECTED\_RESOURCE\_SESSION\_SUPPORT     | 指示查询对受保护资源会话的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_PROTECTED\_RESOURCE\_SESSION\_SUPPORT](/reference/graphics/d3d12_x/structs/d3d12_feature_data_protected_resource_session_support)。                                                                                                                                                                                                                   |
| D3D12\_FEATURE\_ROOT\_SIGNATURE                           | 指示查询根签名版本支持。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_ROOT\_SIGNATURE](/reference/graphics/d3d12/structs/d3d12_feature_data_root_signature_public)。                                                                                                                                                                                                                                                              |
| D3D12\_FEATURE\_ARCHITECTURE1                             | 指示查询每个适配器的架构详细信息，以便应用程序可以更好地针对某些适配器属性进行优化。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_ARCHITECTURE1](/reference/graphics/d3d12/structs/d3d12_feature_data_architecture1_public)。  <div class="alert">**注意**  此值取代 **D3D\_FEATURE\_DATA\_ARCHITECTURE** 值。如果应用程序面向 Windows 10 版本 1703（创意者更新）或更高版本，请使用 **D3D\_FEATURE\_DATA\_ARCHITECTURE1**。</div> <div> </div>                                                     |
| D3D12\_FEATURE\_D3D12\_OPTIONS2                           | 指示查询对深度边界测试和可编程采样位置的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS2](/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options2_public)。                                                                                                                                                                                                                                                 |
| D3D12\_FEATURE\_SHADER\_CACHE                             | 指示查询对着色器缓存的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_SHADER\_CACHE](/reference/graphics/d3d12/structs/d3d12_feature_data_shader_cache_public)。                                                                                                                                                                                                                                                              |
| D3D12\_FEATURE\_COMMAND\_QUEUE\_PRIORITY                  | 指示查询适配器对不同命令队列类型的优先级支持。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_COMMAND\_QUEUE\_PRIORITY](/reference/graphics/d3d12/structs/d3d12_feature_data_command_queue_priority_public)。                                                                                                                                                                                                                                  |
| D3D12\_FEATURE\_D3D12\_OPTIONS3                           | 指示查询对时间戳查询、格式转换、立即写入、视图实例化以及重心坐标的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS3](/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options3_public)。                                                                                                                                                                                                                                    |
| D3D12\_FEATURE\_EXISTING\_HEAPS                           | 指示查询适配器是否支持从现有系统内存创建堆。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_EXISTING\_HEAPS](/reference/graphics/d3d12/structs/d3d12_feature_data_existing_heaps_public)。                                                                                                                                                                                                                                                    |
| D3D12\_FEATURE\_D3D12\_OPTIONS4                           | 指示查询对 64KB 对齐 MSAA 纹理、跨 API 共享和原生 16 位着色器操作的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS4](/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options4_public)。                                                                                                                                                                                                                         |
| D3D12\_FEATURE\_SERIALIZATION                             | 指示查询对堆序列化的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_SERIALIZATION](/reference/graphics/d3d12/structs/d3d12_feature_data_serialization_public)。                                                                                                                                                                                                                                                              |
| D3D12\_FEATURE\_CROSS\_NODE                               | 指示查询对不同适配器之间共享资源（例如多个 GPU）的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_CROSS\_NODE](/reference/graphics/d3d12/structs/d3d12_feature_data_cross_node_public)。                                                                                                                                                                                                                                                  |
| D3D12\_FEATURE\_D3D12\_OPTIONS5                           | 从 Windows 10 版本 1809 (10.0; Build 17763) 开始，指示查询对渲染通道、光线追踪和着色器资源视图第 3 层平铺资源的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS5](/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options5_public)。                                                                                                                                                                                         |
| D3D12\_FEATURE\_DISPLAYABLE                               | 从 Windows 11 (Build 10.0.22000.194) 开始可用。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_DISPLAYABLE](/reference/graphics/d3d12_xs/structs/d3d12_feature_data_displayable_xs)。                                                                                                                                                                                                                                         |
| D3D12\_FEATURE\_D3D12\_OPTIONS6                           | 从 Windows 10 版本 1903 (10.0; Build 18362) 开始，指示查询对可变速率着色 (VRS) 的支持级别，并指示是否支持后台处理。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS6](/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options6_public)。有关详细信息，请参阅[可变速率着色 (VRS)](https://learn.microsoft.com/en-us/windows/win32/direct3d12/vrs) 和 [Direct3D 12 后台处理规范](https://microsoft.github.io/DirectX-Specs/d3d/BackgroundProcessing.html)。 |
| D3D12\_FEATURE\_QUERY\_META\_COMMAND                      | 指示查询对元命令的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_QUERY\_META\_COMMAND](/reference/graphics/d3d12/structs/d3d12_feature_data_query_meta_command_public)。                                                                                                                                                                                                                                                   |
| D3D12\_FEATURE\_D3D12\_OPTIONS7                           | 从 Windows 10 版本 2004 (10.0; Build 19041) 开始，指示查询对网格和放大着色器以及采样器反馈的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS7](/reference/graphics/d3d12_xs/structs/d3d12_feature_data_d3d12_options7_xs)。有关详细信息，请参阅[网格着色器](https://microsoft.github.io/DirectX-Specs/d3d/MeshShader.html)和[采样器反馈](https://microsoft.github.io/DirectX-Specs/d3d/SamplerFeedback.html)规范。                                      |
| D3D12\_FEATURE\_PROTECTED\_RESOURCE\_SESSION\_TYPE\_COUNT | 从 Windows 10 版本 2004 (10.0; Build 19041) 开始，指示查询以检索受保护资源会话类型的计数。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_PROTECTED\_RESOURCE\_SESSION\_TYPE\_COUNT](/reference/graphics/d3d12_xs/structs/d3d12_feature_data_protected_resource_session_type_count_xs)。                                                                                                                                                          |
| D3D12\_FEATURE\_PROTECTED\_RESOURCE\_SESSION\_TYPES       | 从 Windows 10 版本 2004 (10.0; Build 19041) 开始，指示查询以检索受保护资源会话类型的列表。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_PROTECTED\_RESOURCE\_SESSION\_TYPES](/reference/graphics/d3d12_xs/structs/d3d12_feature_data_protected_resource_session_types_xs)。                                                                                                                                                                     |
| D3D12\_FEATURE\_D3D12\_OPTIONS8                           | 从 Windows 11 (Build 10.0.22000.194) 开始，指示是否支持未对齐的块压缩纹理。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS8](/reference/graphics/d3d12_xs/structs/d3d12_feature_data_d3d12_options8_xs)。                                                                                                                                                                                                                    |
| D3D12\_FEATURE\_D3D12\_OPTIONS9                           | 从 Windows 11 (Build 10.0.22000.194) 开始，指示是否支持网格着色器、大于或等于 8 的 *SV\_RenderTargetArrayIndex* 值、有类型资源的 64 位整数原子操作、导数及依赖导数的纹理采样操作，以及对 WaveMMA (wave\_matrix) 操作的支持级别。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS9](/reference/graphics/d3d12_xs/structs/d3d12_feature_data_d3d12_options9_xs)。                                                                                                           |
| D3D12\_FEATURE\_D3D12\_OPTIONS10                          | 从 Windows 11 (Build 10.0.22000.194) 开始，指示是否可以使用 SUM 组合器，以及是否可以从网格着色器设置 *SV\_ShadingRate*。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS10](/reference/graphics/d3d12_xs/structs/d3d12_feature_data_d3d12_options10_xs)。                                                                                                                                                                                |
| D3D12\_FEATURE\_D3D12\_OPTIONS11                          | 从 Windows 11 (Build 10.0.22000.194) 开始，指示是否支持描述符堆中资源的 64 位整数原子操作。此值对应的数据结构为 [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS11](/reference/graphics/d3d12_xs/structs/d3d12_feature_data_d3d12_options11_xs)。                                                                                                                                                                                                        |

## 注解

在调用 [ID3D12Device::CheckFeatureSupport](/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_checkfeaturesupport_public) 时使用此枚举中的常量，以查询驱动程序对各种 Direct3D 12 功能的支持。此枚举中的每个值都有对应的数据结构，你必须在 **ID3D12Device::CheckFeatureSupport** 的 *pFeatureSupportData* 参数中（通过指针引用）传递它。

## 要求

**头文件：** d3d12\_xs.h 或 d3d12\_x.h\
**库：** d3d12\_xs.lib 或 d3d12\_x.lib\
**支持的平台**：XBOX Series 主机和 XBOX One 系列

## 另请参阅

* [核心枚举](https://learn.microsoft.com/en-us/windows/win32/direct3d12/direct3d-12-enumerations)
* [ID3D12Device::CheckFeatureSupport](/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_checkfeaturesupport_public)


## Related topics

- [D3D12_FEATURE_DATA_D3D12_OPTIONS](/zh-CN/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options_public.md)
- [D3D12_FEATURE_DATA_D3D12_OPTIONS2](/zh-CN/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options2_public.md)
- [D3D12_FEATURE_DATA_D3D12_OPTIONS1](/zh-CN/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options1_public.md)
- [D3D12_FEATURE_DATA_D3D12_OPTIONS3](/zh-CN/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options3_public.md)
- [D3D12_FEATURE_DATA_D3D12_OPTIONS5](/zh-CN/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options5_public.md)
