D3D11_FEATURE_DATA_D3D11_OPTIONS1 structure (d3d11.h)


This structure is supported by the Direct3D 11.2 runtime, which is available on Windows 8.1 and later operating systems.

Describes Direct3D 11.2 feature options in the current graphics driver.


typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS1 {
  D3D11_TILED_RESOURCES_TIER TiledResourcesTier;
  BOOL                       MinMaxFiltering;
  BOOL                       ClearViewAlsoSupportsDepthOnlyFormats;
  BOOL                       MapOnDefaultBuffers;




Specifies whether the hardware and driver support tiled resources. The runtime sets this member to a D3D11_TILED_RESOURCES_TIER-typed value that indicates if the hardware and driver support tiled resources and at what tier level.


Type: BOOL

Specifies whether the hardware and driver support the filtering options (D3D11_FILTER) of comparing the result to the minimum or maximum value during texture sampling. The runtime sets this member to TRUE if the hardware and driver support these filtering options.


Type: BOOL

Specifies whether the hardware and driver also support the ID3D11DeviceContext1::ClearView method on depth formats. For info about valid depth formats, see D3D11_DEPTH_STENCIL_VIEW_DESC.


Type: BOOL

Specifies support for creating ID3D11Buffer resources that can be passed to the ID3D11DeviceContext::Map and ID3D11DeviceContext::Unmap methods. This means that the CPUAccessFlags member of the D3D11_BUFFER_DESC structure may be set with the desired D3D11_CPU_ACCESS_FLAG elements when the Usage member of D3D11_BUFFER_DESC is set to D3D11_USAGE_DEFAULT. The runtime sets this member to TRUE if the hardware is capable of at least D3D_FEATURE_LEVEL_11_0 and the graphics device driver supports mappable default buffers.


If the Direct3D API is the Direct3D 11.2 runtime and can support 11.2 features, ID3D11Device::CheckFeatureSupport for D3D11_FEATURE_D3D11_OPTIONS1 will return a SUCCESS code when valid parameters are passed. The members of D3D11_FEATURE_DATA_D3D11_OPTIONS1 will be set appropriately based on the system's graphics hardware and graphics driver.

Mappable default buffers

When creating a default buffer with D3D11_CPU_ACCESS_FLAG, only the D3D11_BIND_SHADER_RESOURCE and D3D11_BIND_UNORDERED_ACCESS bind flags may be used.

The D3D11_RESOURCE_MISC_FLAG cannot be used when creating resources with D3D11_CPU_ACCESS flags.

On non-unified memory architecture systems (discrete GPUs), apps should not use mappable default buffers if the compute shader code accesses the same byte in a default buffer more than once - sending the data across the bus multiple times eliminates the performance gained by mapping the default buffer instead of copying it.


Minimum supported client Windows 8.1 [desktop apps | UWP apps]
Minimum supported server Windows Server 2012 R2 [desktop apps | UWP apps]
Header d3d11.h

See also

Core Structures