D3D12_FEATURE Enumeration

Specifies a Direct3D 12 feature or feature set to query about. When you want to query for the level to which an adapter supports a feature, pass one of these values to ID3D12Device::CheckFeatureSupport.

Syntax

typedef enum D3D12_FEATURE {
  D3D12_FEATURE_D3D12_OPTIONS,
  D3D12_FEATURE_ARCHITECTURE,
  D3D12_FEATURE_FEATURE_LEVELS,
  D3D12_FEATURE_FORMAT_SUPPORT,
  D3D12_FEATURE_MULTISAMPLE_QUALITY_LEVELS,
  D3D12_FEATURE_FORMAT_INFO,
  D3D12_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT,
  D3D12_FEATURE_SHADER_MODEL,
  D3D12_FEATURE_D3D12_OPTIONS1,
  D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_SUPPORT,
  D3D12_FEATURE_ROOT_SIGNATURE,
  D3D12_FEATURE_ARCHITECTURE1,
  D3D12_FEATURE_D3D12_OPTIONS2,
  D3D12_FEATURE_SHADER_CACHE,
  D3D12_FEATURE_COMMAND_QUEUE_PRIORITY,
  D3D12_FEATURE_D3D12_OPTIONS3,
  D3D12_FEATURE_EXISTING_HEAPS,
  D3D12_FEATURE_D3D12_OPTIONS4,
  D3D12_FEATURE_SERIALIZATION,
  D3D12_FEATURE_CROSS_NODE,
  D3D12_FEATURE_D3D12_OPTIONS5
} ;

Constants

D3D12_FEATURE_D3D12_OPTIONS Indicates a query for the level of support for basic Direct3D 12 feature options. The corresponding data structure for this value is D3D12_FEATURE_DATA_D3D12_OPTIONS.
D3D12_FEATURE_ARCHITECTURE Indicates a query for the adapter's architectural details, so that your application can better optimize for certain adapter properties. The corresponding data structure for this value is D3D12_FEATURE_DATA_ARCHITECTURE.
Note  This value has been superseded by the D3D_FEATURE_DATA_ARCHITECTURE1 value. If your application targets Windows 10, version 1703 (Creators' Update) or higher, then use the D3D_FEATURE_DATA_ARCHITECTURE1 value instead.
 
D3D12_FEATURE_FEATURE_LEVELS Indicates a query for info about the feature levels supported. The corresponding data structure for this value is D3D12_FEATURE_DATA_FEATURE_LEVELS.
D3D12_FEATURE_FORMAT_SUPPORT Indicates a query for the resources supported by the current graphics driver for a given format. The corresponding data structure for this value is D3D12_FEATURE_DATA_FORMAT_SUPPORT.
D3D12_FEATURE_MULTISAMPLE_QUALITY_LEVELS Indicates a query for the image quality levels for a given format and sample count. The corresponding data structure for this value is D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS.
D3D12_FEATURE_FORMAT_INFO Indicates a query for the DXGI data format. The corresponding data structure for this value is D3D12_FEATURE_DATA_FORMAT_INFO.
D3D12_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT Indicates a query for the GPU's virtual address space limitations. The corresponding data structure for this value is D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT.
D3D12_FEATURE_SHADER_MODEL Indicates a query for the supported shader model. The corresponding data structure for this value is D3D12_FEATURE_DATA_SHADER_MODEL.
D3D12_FEATURE_D3D12_OPTIONS1 Indicates a query for the level of support for HLSL 6.0 wave operations. The corresponding data structure for this value is D3D12_FEATURE_DATA_D3D12_OPTIONS1.
D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_SUPPORT
D3D12_FEATURE_ROOT_SIGNATURE Indicates a query for root signature version support. The corresponding data structure for this value is D3D12_FEATURE_DATA_ROOT_SIGNATURE.
D3D12_FEATURE_ARCHITECTURE1 Indicates a query for each adapter's architectural details, so that your application can better optimize for certain adapter properties. The corresponding data structure for this value is D3D12_FEATURE_DATA_ARCHITECTURE1.
Note  This value supersedes the D3D_FEATURE_DATA_ARCHITECTURE value. If your application targets Windows 10, version 1703 (Creators' Update) or higher, then use D3D_FEATURE_DATA_ARCHITECTURE1.
 
D3D12_FEATURE_D3D12_OPTIONS2 Indicates a query for the level of support for depth-bounds tests and programmable sample positions. The corresponding data structure for this value is D3D12_FEATURE_DATA_D3D12_OPTIONS2.
D3D12_FEATURE_SHADER_CACHE Indicates a query for the level of support for shader caching. The corresponding data structure for this value is D3D12_FEATURE_DATA_SHADER_CACHE.
D3D12_FEATURE_COMMAND_QUEUE_PRIORITY Indicates a query for the adapter's support for prioritization of different command queue types. The corresponding data structure for this value is D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY.
D3D12_FEATURE_D3D12_OPTIONS3 Indicates a query for the level of support for timestamp queries, format-casting, immediate write, view instancing, and barycentrics. The corresponding data structure for this value is D3D12_FEATURE_DATA_D3D12_OPTIONS3.
D3D12_FEATURE_EXISTING_HEAPS Indicates a query for whether or not the adapter supports creating heaps from existing system memory. The corresponding data structure for this value is D3D12_FEATURE_DATA_EXISTING_HEAPS.
D3D12_FEATURE_D3D12_OPTIONS4
D3D12_FEATURE_SERIALIZATION
D3D12_FEATURE_CROSS_NODE
D3D12_FEATURE_D3D12_OPTIONS5 Starting with Windows 10, version 1809 (10.0; Build 17763), indicates a query for the level of support for render passes, ray tracing, and shader-resource view tier 3 tiled resources. The corresponding data structure for this value is D3D12_FEATURE_DATA_D3D12_OPTIONS5.

Remarks

Use a constant from this enumeration in a call to ID3D12Device::CheckFeatureSupport to query a driver about support for various Direct3D 12 features. Each value in this enumeration has a corresponding data structure that you must pass (by pointer reference) in the pFeatureSupportData parameter of ID3D12Device::CheckFeatureSupport.

Requirements

   
Header d3d12.h

See Also

Core Enumerations

ID3D12Device::CheckFeatureSupport