Hardwarefeatureebenen

Beschreibt die Funktionalität der Hardwarefeatureebenen 11_0 bis 12_1.

Um die Vielfalt von Grafikkarten in neuen und vorhandenen Computern zu bewältigen, hat Microsoft Direct3D 11 das Konzept der Featureebenen eingeführt. Jedes Video Karte implementiert abhängig von den installierten Grafikverarbeitungseinheiten (GPUs) eine bestimmte Ebene von Microsoft DirectX (DX)-Funktionalität. Eine Featureebene ist ein klar definierter Satz von GPU-Funktionen. Für instance implementiert die Featureebene 11_0 die Funktionalität, die in Direct3D 11 implementiert wurde.

Wenn Sie nun ein Gerät erstellen, können Sie versuchen, ein Gerät für die Featureebene zu erstellen, die Sie anfordern möchten. Wenn die Geräteerstellung funktioniert, ist diese Featureebene vorhanden. Wenn dies nicht der Fall ist, unterstützt die Hardware diese Featureebene nicht. Sie können entweder versuchen, ein Gerät auf einer niedrigeren Featureebene neu zu erstellen, oder Sie können die Anwendung beenden.

Die grundlegenden Eigenschaften von Featureebenen sind:

  • Alle Direct3D 12-Treiber haben die Featureebene 11_0 oder höher.
  • Eine GPU, die das Erstellen eines Geräts ermöglicht, erfüllt oder überschreitet die Funktionalität dieser Featureebene.
  • Eine Featureebene umfasst immer die Funktionalität vorheriger oder niedrigerer Featureebenen.
  • Eine Featureebene impliziert keine Leistung, nur Funktionalität. Die Leistung hängt von der Hardwareimplementierung ab.
  • Beim Aufrufen von D3D12CreateDevice wird eine Featureebene ausgewählt.
  • Rufen Sie CheckFeatureSupport auf, um ausführlichere Informationen zu unterstützten Features zu erhalten (insbesondere diejenigen, die in der folgenden Tabelle als Optional gekennzeichnet sind, was bedeutet, dass die Hardware das Feature möglicherweise unterstützt, aber nicht erforderlich ist).

Informationen zu Einschränkungen beim Erstellen von Geräten ohne Hardwaretyp auf bestimmten Featureebenen finden Sie unter Einschränkungen beim Erstellen von WARP und Referenzgeräten. Weitere Informationen zur Einführung von Featureebenen finden Sie in der Direct3D 11-Dokumentation zu Direct3D-Featureebenen.

Nummerierungssysteme

Hardwarefeatureebenen sind nicht identisch mit API-Versionen. Beispielsweise gibt es eine D3D11.3-API, aber es gibt keine Hardwarefeatureebene 11_3. Featureebenen werden in der D3D_FEATURE_LEVEL-Enumeration definiert.

Es gibt drei verschiedene Nummerierungssysteme:

  • Direct3D-Versionen verwenden einen Punkt; Beispiel: Direct3D 12.0.
  • Shadermodelle verwenden einen Punkt; Beispiel: Shadermodell 5.1.
  • Featureebenen verwenden einen Unterstrich; Beispiel: Featureebene 12_0.

Unterstützung auf Featureebene

Die folgenden Features sind für jede Direct3D-Featureebene verfügbar.

Die Überschriften in der obersten Zeile sind Direct3D-Featureebenen. Die Überschriften in der linken Spalte sind Features.

Feature \ Featureebene 12_1 soll 12_0 soll 11_1¹ 11_0
Shadermodell 6.0 6.0 6,0/5,1² 6,0/5,1²
Ressourcenbindungsebene Ebene 2¹ Ebene 2¹ Ebene 1¹ Ebene 1¹
Kacheln von Ressourcen Ebene 2¹ Ebene 2¹ Optional Optional
Konservative Rasterung Ebene 1¹ Optional Optional Nein
Geordnete Rasterizeransichten Ja Optional Optional Nein
Min/Max Filter Ja Ja Optional Nein
Standardpuffer zuordnen Optional Optional Optional Optional
Von Shader festgelegter Schablonenreferenzwert Optional Optional Optional Nein
Typisierte, ungeordnete Zugriffsansichtsladevorgänge 18 Formate, optionaler 18 Formate, optionaler 3 Formate, optionaler 3 Formate, optionaler
Geometry-Shader Ja Ja Ja Ja
Stream Out Ja Ja Ja Ja
DirectCompute/Compute-Shader Ja Ja Ja Ja
Hull- und Domänenshader Ja Ja Ja Ja
Texturressourcenarrays Ja Ja Ja Ja
Cubemap-Ressourcenarrays Ja Ja Ja Ja
BC1- zu BC7-Komprimierung Ja Ja Ja Ja
Alpha-to-Coverage Ja Ja Ja Ja
Logikvorgänge (Output Merger) Ja Ja Ja Optional
Zielunabhängige Rasterung Ja Ja Ja Nein
Multiple Render Target (MRT) mit ForcedSampleCount 1 Ja Ja Ja Optional
Maximale Anzahl erzwungener Beispiele für reines UAV-Rendering 16 16 16 8
Maximale Texturdimension 16384 16384 16384 16384
Maximale Cubemap-Dimension 16384 16384 16384 16384
Maximale Volumeausdehnung 2048 2048 2048 2048
Maximale Texturwiederholung 16384 16384 16384 16384
Max. Anisotropie 16 16 16 16
Maximale primitive Anzahl 2^32 – 1 2^32 – 1 2^32 – 1 2^32 – 1
Max Scheitelpunktindex 2^32 – 1 2^32 – 1 2^32 – 1 2^32 – 1
Max. Eingabeslots 32 32 32 32
Gleichzeitige Renderziele 8 8 8 8
Occlusionsabfragen Ja Ja Ja Ja
Separate Alphamischung Ja Ja Ja Ja
Einmal spiegeln Ja Ja Ja Ja
Überlappende Vertexelemente Ja Ja Ja Ja
Unabhängige Schreibmasken Ja Ja Ja Ja
Instanziierung Ja Ja Ja Ja

 

  • Erfordert die Direct3D 11.3- oder Direct3D 12-Runtime.
  • ¹ Erfordert die Direct3D 11.1-Runtime.
  • ² Das Shadermodell 5.0 kann optional Shader mit doppelter Genauigkeit, erweiterte Shader mit doppelter Genauigkeit, die SAD4-Shader-Anweisung und Shader mit teilweiser Genauigkeit unterstützen. Rufen Sie ID3D12Device::CheckFeatureSupport auf, um die verfügbaren Optionen des Shadermodells 5.0 zu bestimmen. Einige Kompatibilität hängt davon ab, auf welcher Hardware Sie ausführen: Shadermodell 5.1 wird nur auf Hardware unterstützt, die die DirectX 12-API unterstützt, unabhängig von der verwendeten Featureebene. DirectX 11-Hardware unterstützt nur bis zum Shadermodell 5.0. Die DirectX 12-API wird nur auf Featureebene 11_0 heruntergefahren.
  • ¹ Höhere Ebenen sind optional.
  • Die Featureebenen 12_0 und 12_1 erfordern die Direct3D 11.3- oder Direct3D 12-Runtime.
  • Featureebene 11_1 erfordert die Direct3D 11.1-Runtime.
  • Featureebene 11_0 erfordert die Direct3D 11.0-Runtime.

Hardwareunterstützung für DXGI-Formate

Informationen zum Anzeigen von Tabellen mit DXGI-Formaten und Hardwarefeatures finden Sie unter:

Funktionsabfragen

Grundlegendes zu Direct3D 12