Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

10Level9 ID3D11Device Methods

This page lists the differences between each 10Level9 feature level and the D3D_FEATURE_LEVEL_11_0 and higher feature level for the following ID3D11Device methods.

ID3D11Device::CheckCounter

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Not supported on any 9.* feature level.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CheckFormatSupport

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1See format support by feature level
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CheckMultisampleQualityLevels

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Feature levels make no guarantees concerning MSAA support.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateBlendState

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1

AlphaToCoverageEnable must be FALSE.

The first four BlendEnables must all have the same value.

D3D11_BLEND_SRC_ALPHASAT not supported.

Dual-source color blend not supported (any SrcBlend or DestBlend with SRC1 in the name)

D3D_FEATURE_LEVEL_9_2

AlphaToCoverageEnable must be FALSE.

The first four BlendEnables must all have the same value.

The first four RenderTargetWriteMasks must all have the same value.

D3D11_BLEND_SRC_ALPHASAT not supported.

Dual-source color blend not supported (any SrcBlend or DestBlend with SRC1 in the name)

D3D_FEATURE_LEVEL_9_3

AlphaToCoverageEnable must be FALSE.

The first four BlendEnables must all have the same value.

D3D11_BLEND_SRC_ALPHASAT not supported.

Dual-source color blend not supported (any SrcBlend or DestBlend with SRC1 in the name)

D3D_FEATURE_LEVEL_10_0Adds alpha-to-coverage

 

ID3D11Device::CreateBuffer

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1

Buffers can't have render target views.

Buffers must have exactly one of D3D11_BIND_VERTEX_BUFFER, D3D11_BIND_INDEX_BUFFER, or D3D11_BIND_CONSTANT_BUFFER.

Only allows index buffers with the DXGI_FORMAT_R16_UINT format.

D3D_FEATURE_LEVEL_9_2

Buffers can't have render target views.

Buffers must have exactly one of D3D11_BIND_VERTEX_BUFFER, D3D11_BIND_INDEX_BUFFER, or D3D11_BIND_CONSTANT_BUFFER.

Allows index buffers with the DXGI_FORMAT_R16_UINT and DXGI_FORMAT_R32_UINT formats like D3D_FEATURE_LEVEL_10_0 and higher.

D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateCounter

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Not supported on any 9.* feature level.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateDepthStencilView

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Does not support two-sided stencil.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateDomainShader

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Not supported on any 9.* or 10.* feature level.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3
D3D_FEATURE_LEVEL_10_0
D3D_FEATURE_LEVEL_10_1

 

ID3D11Device::CreateGeometryShader

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Not supported on any 9.* feature level.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateGeometryShaderWithStreamOutput

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Not supported on any 9.* feature level.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateHullShader

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Not supported on any 9.* or 10.* feature level.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3
D3D_FEATURE_LEVEL_10_0
D3D_FEATURE_LEVEL_10_1

 

ID3D11Device::CreateInputLayout

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Does not support D3D11_INPUT_PER_INSTANCE_DATA
D3D_FEATURE_LEVEL_9_2Does not support D3D11_INPUT_PER_INSTANCE_DATA
D3D_FEATURE_LEVEL_9_3Vertex stream zero must have D3D11_INPUT_PER_VERTEX_DATA, if any streams have D3D11_INPUT_PER_VERTEX_DATA

 

See the format support by feature level chart for details on what formats can be used for vertex data at each feature level.

ID3D11Device::CreatePixelShader

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Must use ps_4_0_level_9_1
D3D_FEATURE_LEVEL_9_2Must use ps_4_0_level_9_1
D3D_FEATURE_LEVEL_9_3Must use ps_4_0_level_9_3 or ps_4_0_level_9_1

 

ID3D11Device::CreatePredicate

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Not supported on any 9.* feature level.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateQuery

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Only event queries are supported
D3D_FEATURE_LEVEL_9_2Event and occlusion queries are supported
D3D_FEATURE_LEVEL_9_3Event and occlusion queries are supported

 

ID3D11Device::CreateRasterizerState

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1DepthClipEnable must be TRUE. DepthBiasClamp must be set to 0.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateRenderTargetView

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Can only support render target views of Texture2D objects.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateSamplerState

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1

Comparison filter is not supported.

Border color must be within [0,1]

Min LOD cannot be fractional

Max LOD must be FLT_MAX

Maximum anisotropy is 2.

D3D11_TEXTURE_ADDRESS_MIRRORONCE not supported.

D3D_FEATURE_LEVEL_9_2

Comparison filter is not supported.

Border color must be within [0,1]

Min LOD cannot be fractional

Max LOD must be FLT_MAX

Maximum anisotropy is 16.

D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateShaderResourceView

Feature LevelMostDetailedMip plus MipLevels must include lowest LOD (smallest subresourceView must include all resource array elements
D3D_FEATURE_LEVEL_9_1Yesyes
D3D_FEATURE_LEVEL_9_2YesYes
D3D_FEATURE_LEVEL_9_3YesYes

 

ID3D11Device::CreateTexture1D

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Not supported on any 9.* feature level.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateTexture2D

Texture2D resources have limits on their width and height that differ across feature levels. In feature levels 9_3, the following are guaranteed minima, and individual implementations may exceed the requirements.

Feature LevelIf MipCount > 1, Dimensions must be integral power of twoMinimum supported texture dimension Cube textures dimensions must be power of two If MISC_TEXTURECUBE is set, the ArraySize is: If MISC_TEXTURECUBE is not set, the ArraySize is.
D3D_FEATURE_LEVEL_9_1Yes2048Yes61
D3D_FEATURE_LEVEL_9_2Yes2048Yes61
D3D_FEATURE_LEVEL_9_3Yes4096Yes61

 

In the previous table, the full name of MISC_TEXTURECUBE is D3D11_RESOURCE_MISC_TEXTURECUBE.

The following are true for all 9_* feature levels:

  • When using D3D11_USAGE_DEFAULT or D3D11_USAGE_IMMUTABLE, BindFlags cannot be zero.
  • When using D3D11_BIND_DEPTH_STENCIL, MipLevels must be 1.
  • When using D3D11_BIND_SHADER_RESOURCE, SampleDesc.Count must be 1.
  • When using D3D11_BIND_PRESENT, resource cannot have D3D11_BIND_SHADER_RESOURCE.
  • When using D3D10_DDI_RESOURCE_MISC_SHARED, Format cannot be DXGI_FORMAT_R8G8B8A8_UNORM or DXGI_FORMAT_R8G8B8A8_UNORM_SRGB.

ID3D11Device::CreateTexture3D

Feature LevelMaximum Dimension (any axis)Dimensions must be power of two
D3D_FEATURE_LEVEL_9_1256Yes
D3D_FEATURE_LEVEL_9_2512Yes
D3D_FEATURE_LEVEL_9_3512Yes

 

If resource is D3D11_USAGE_DEFAULT or D3D11_USAGE_IMMUTABLE, BindFlags cannot be zero.

ID3D11Device::CreateUnorderedAccessView

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Not supported on any 9.* feature level.
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

ID3D11Device::CreateVertexShader

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1Must use vs_4_0_level_9_1
D3D_FEATURE_LEVEL_9_2Must use vs_4_0_level_9_1
D3D_FEATURE_LEVEL_9_3Must use vs_4_0_level_9_3 or vs_4_0_level_9_1

 

ID3D11Device::OpenSharedResource

Feature LevelBehavior Differences
D3D_FEATURE_LEVEL_9_1

Use ID3D11Device::CheckFeatureSupport with the D3D11_FEATURE_FORMAT_SUPPORT2 value and the D3D11_FEATURE_DATA_FORMAT_SUPPORT2 structure to determine if a format can be shared. If the format can be shared, CheckFeatureSupport returns the D3D11_FORMAT_SUPPORT2_SHAREABLE flag.

Note  DXGI_FORMAT_R8G8B8A8_UNORM and DXGI_FORMAT_R8G8B8A8_UNORM_SRGB are never shareable when using feature level 9, even if the device indicates optional feature support for D3D11_FORMAT_SUPPORT_SHAREABLE. Attempting to create shared resources with DXGI formats DXGI_FORMAT_R8G8B8A8_UNORM and DXGI_FORMAT_R8G8B8A8_UNORM_SRGB will always fail unless the feature level is 10_0 or higher.

D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

 

Related topics

10Level9 Reference

 

 

Community Additions

Show:
© 2014 Microsoft