Freigeben über


10Level9 ID3D11Gerätemethoden

In diesem Abschnitt werden die Unterschiede zwischen den einzelnen 10Level9-Featureebenen und der D3D_FEATURE_LEVEL_11_0 und höherer Featureebene für die ID3D11Device-Methoden aufgeführt.

ID3D11Device::CheckCounter

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Geräteabhängige Indikatoren werden optional unterstützt. Verwenden Sie ID3D11Device::CheckCounterInfo , um die Unterstützung zu ermitteln.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CheckFormatSupport

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Siehe Formatunterstützung nach Featureebene${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CheckMultisampleQualityLevels

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Featureebenen bieten keine Garantien für die MSAA-Unterstützung.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateBlendState

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 AlphaToCoverageEnable muss FALSE sein.
Die ersten vier BlendEnables müssen alle den gleichen Wert aufweisen.
D3D11_BLEND_SRC_ALPHASAT nicht unterstützt.
Dual-Source-Farbmischung wird nicht unterstützt (SrcBlend oder DestBlend mit SRC1 im Namen)
D3D_FEATURE_LEVEL_9_2 AlphaToCoverageEnable muss FALSE sein.
Die ersten vier BlendEnables müssen alle den gleichen Wert aufweisen.
Die ersten vier RenderTargetWriteMasks müssen alle den gleichen Wert aufweisen.
D3D11_BLEND_SRC_ALPHASAT nicht unterstützt.
Dual-Source-Farbmischung wird nicht unterstützt (SrcBlend oder DestBlend mit SRC1 im Namen)
D3D_FEATURE_LEVEL_9_3 AlphaToCoverageEnable muss FALSE sein.
Die ersten vier BlendEnables müssen alle den gleichen Wert aufweisen.
D3D11_BLEND_SRC_ALPHASAT nicht unterstützt.
Dual-Source-Farbmischung wird nicht unterstützt (SrcBlend oder DestBlend mit SRC1 im Namen)
D3D_FEATURE_LEVEL_10_0 Alpha-to-Coverage hinzugefügt

ID3D11Device::CreateBlendState1

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Nicht unterstützt
D3D_FEATURE_LEVEL_9_2 Nicht unterstützt
D3D_FEATURE_LEVEL_9_3 Nicht unterstützt
D3D_FEATURE_LEVEL_10_0 Der OutputMergerLogicOp-Member wurde D3D11_FEATURE_DATA_D3D11_OPTIONS hinzugefügt, um die Unterstützung logischer Vorgänge zu bestimmen (bitweise Logikvorgänge zwischen Pixelshaderausgabe und Renderzielinhalten, siehe D3D11_RENDER_TARGET_BLEND_DESC1).

ID3D11Device::CreateBuffer

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Puffer können keine Renderzielansichten aufweisen.
Puffer müssen genau über eine der D3D11_BIND_VERTEX_BUFFER, D3D11_BIND_INDEX_BUFFER oder D3D11_BIND_CONSTANT_BUFFER verfügen.
Nur Indexpuffer mit dem DXGI_FORMAT_R16_UINT-Format zulässig.
D3D_FEATURE_LEVEL_9_2 Puffer können keine Renderzielansichten aufweisen.
Puffer müssen genau über eine der D3D11_BIND_VERTEX_BUFFER, D3D11_BIND_INDEX_BUFFER oder D3D11_BIND_CONSTANT_BUFFER verfügen.
Ermöglicht Indexpuffer mit den DXGI_FORMAT_R16_UINT- und DXGI_FORMAT_R32_UINT-Formaten wie D3D_FEATURE_LEVEL_10_0 und höher.
${REMOVE}$
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateCounter

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Auf 9.*-Featureebene nicht unterstützt.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateDepthStencilView

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Unterstützt keine zweiseitige Schablone.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateDomainShader

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Wird auf keiner Featureebene von 9.* oder 10.* unterstützt. ${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3
D3D_FEATURE_LEVEL_10_0
D3D_FEATURE_LEVEL_10_1

ID3D11Device::CreateGeometryShader

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Auf 9.*-Featureebene nicht unterstützt.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateGeometryShaderWithStreamOutput

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Auf 9.*-Featureebene nicht unterstützt.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateHullShader

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Auf 9.* oder 10.* Featureebene nicht unterstützt.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3
D3D_FEATURE_LEVEL_10_0
D3D_FEATURE_LEVEL_10_1

ID3D11Device::CreateInputLayout

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Unterstützt nicht D3D11_INPUT_PER_INSTANCE_DATA
D3D_FEATURE_LEVEL_9_2 Unterstützt nicht D3D11_INPUT_PER_INSTANCE_DATA
D3D_FEATURE_LEVEL_9_3 Vertexstream 0 muss über D3D11_INPUT_PER_VERTEX_DATA verfügen, wenn Datenströme D3D11_INPUT_PER_VERTEX_DATA

Im Diagramm "Formatunterstützung nach Featureebene" finden Sie Details dazu, welche Formate für Vertexdaten auf jeder Featureebene verwendet werden können.

ID3D11Device::CreatePixelShader

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Muss ps_4_0_level_9_1 verwenden
D3D_FEATURE_LEVEL_9_2 Muss ps_4_0_level_9_1 verwenden
D3D_FEATURE_LEVEL_9_3 Muss ps_4_0_level_9_3 oder ps_4_0_level_9_1 verwenden.

ID3D11Device::CreatePredicate

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Auf 9.*-Featureebene nicht unterstützt.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateQuery

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Ereignisabfragen werden unterstützt. Zeitstempelabfragen sind optional: Rufen Sie CreateQuery auf, um die Unterstützung zu ermitteln.
D3D_FEATURE_LEVEL_9_2 Ereignis- und Okklusionsabfragen werden unterstützt. Zeitstempelabfragen sind optional: Rufen Sie CreateQuery auf, um die Unterstützung zu ermitteln.
D3D_FEATURE_LEVEL_9_3 Ereignis- und Okklusionsabfragen werden unterstützt. Zeitstempelabfragen sind optional: Rufen Sie CreateQuery auf, um die Unterstützung zu ermitteln.

ID3D11Device::CreateRasterizerState

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 DepthClipEnable muss TRUE sein. DepthBiasClamp muss auf 0 festgelegt werden.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateRenderTargetView

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Kann nur Renderzielansichten von Texture2D-Objekten unterstützen.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateSamplerState

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Der Vergleichsfilter wird nicht unterstützt.
Rahmenfarbe muss innerhalb von [0,1] sein
Min. LOD darf nicht fraktioniert sein
Max. LOD muss FLT_MAX sein
Die maximale Anisotropie beträgt 2.
D3D11_TEXTURE_ADDRESS_MIRRORONCE nicht unterstützt.
D3D_FEATURE_LEVEL_9_2 Der Vergleichsfilter wird nicht unterstützt.
Rahmenfarbe muss innerhalb von [0,1] sein
Min. LOD darf nicht fraktioniert sein
Max. LOD muss FLT_MAX sein
Die maximale Anisotropie beträgt 16.
${REMOVE}$
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateShaderResourceView

Featureebene MostDetailedMip plus MipLevels müssen die niedrigste LOD (kleinste Subressource) enthalten. Die Ansicht muss alle Ressourcenarrayelemente enthalten.
D3D_FEATURE_LEVEL_9_1 Ja ja
D3D_FEATURE_LEVEL_9_2 Ja Ja
D3D_FEATURE_LEVEL_9_3 Ja Ja

ID3D11Device::CreateTexture1D

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Auf 9.*-Featureebene nicht unterstützt.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateTexture2D

Texture2D-Ressourcen weisen Einschränkungen in Bezug auf Breite und Höhe auf, die sich je nach Featureebene unterscheiden. In den Featureebenen 9_3 sind die folgenden Mindestanforderungen garantiert, und einzelne Implementierungen können die Anforderungen überschreiten.

Featureebene Wenn MipCount > 1, Dimensionen müssen integrale Leistung von zwei sein Mindestens unterstützte Texturdimension Dimensionen von Cubetexturen müssen zwei sein Wenn MISC_TEXTURECUBE festgelegt ist, lautet ArraySize: Wenn MISC_TEXTURECUBE nicht festgelegt ist, lautet ArraySize.
D3D_FEATURE_LEVEL_9_1 Ja 2048 Ja 6 1
D3D_FEATURE_LEVEL_9_2 Ja 2048 Ja 6 1
D3D_FEATURE_LEVEL_9_3 Ja 4096 Ja 6 1

In der vorherigen Tabelle ist der vollständige Name von MISC_TEXTURECUBED3D11_RESOURCE_MISC_TEXTURECUBE.

Für alle 9_* -Featureebenen gilt Folgendes:

  • Wenn Sie D3D11_USAGE_DEFAULT oder D3D11_USAGE_IMMUTABLE verwenden, kann BindFlags nicht 0 (null) sein.
  • Wenn Sie D3D11_BIND_DEPTH_STENCIL verwenden, muss MipLevels 1 sein.
  • Wenn Sie D3D11_BIND_SHADER_RESOURCE verwenden, muss SampleDesc.Count 1 sein.
  • Wenn Sie D3D11_BIND_PRESENT verwenden, kann die Ressource nicht über D3D11_BIND_SHADER_RESOURCE verfügen.
  • Bei Verwendung von D3D10_DDI_RESOURCE_MISC_SHARED kann Format nicht DXGI_FORMAT_R8G8B8A8_UNORM oder DXGI_FORMAT_R8G8B8A8_UNORM_SRGB werden.

ID3D11Device::CreateTexture3D

Featureebene Maximale Dimension (beliebige Achse) Dimensionen müssen eine Leistung von zwei aufweisen
D3D_FEATURE_LEVEL_9_1 256 Ja
D3D_FEATURE_LEVEL_9_2 512 Ja
D3D_FEATURE_LEVEL_9_3 512 Ja

Wenn die Ressource D3D11_USAGE_DEFAULT oder D3D11_USAGE_IMMUTABLE ist, kann BindFlags nicht null sein.

ID3D11Device::CreateUnorderedAccessView

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Auf 9.*-Featureebene nicht unterstützt.${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

ID3D11Device::CreateVertexShader

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Muss vs_4_0_level_9_1 verwenden
D3D_FEATURE_LEVEL_9_2 Muss vs_4_0_level_9_1 verwenden
D3D_FEATURE_LEVEL_9_3 Muss vs_4_0_level_9_3 oder vs_4_0_level_9_1 verwenden.

ID3D11Device::OpenSharedResource

Featureebene Verhaltensunterschiede
D3D_FEATURE_LEVEL_9_1 Verwenden Sie ID3D11Device::CheckFeatureSupport mit dem D3D11_FEATURE_FORMAT_SUPPORT2-Wert und der D3D11_FEATURE_DATA_FORMAT_SUPPORT2-Struktur , um zu bestimmen, ob ein Format freigegeben werden kann. Wenn das Format freigegeben werden kann, gibt CheckFeatureSupport das flag D3D11_FORMAT_SUPPORT2_SHAREABLE zurück.
Hinweis:DXGI_FORMAT_R8G8B8A8_UNORM und DXGI_FORMAT_R8G8B8A8_UNORM_SRGB können bei Verwendung der Featureebene 9 nie freigegeben werden, auch wenn das Gerät optionale Featureunterstützung für D3D11_FORMAT_SUPPORT_SHAREABLE angibt. Der Versuch, freigegebene Ressourcen mit DXGI-Formaten DXGI_FORMAT_R8G8B8A8_UNORM und DXGI_FORMAT_R8G8B8A8_UNORM_SRGB zu erstellen, schlägt immer fehl, es sei denn, die Featureebene ist 10_0 oder höher.
${REMOVE}$
D3D_FEATURE_LEVEL_9_2
D3D_FEATURE_LEVEL_9_3

10Level9-Referenz