Freigeben über


API-Features (Direct3D 10)

Die Direct3D 10-Grafikpipeline stellt eine grundlegende Änderung der Architektur dar, die von Grund auf in Hard- und Software neu erstellt wurde, um die nächste Generation von Spielen und 3D-Multimediaanwendungen zu unterstützen. Es verwendet das Windows Display Driver Model (WDDM), das Leistungs- und Verhaltensverbesserungen wie virtuellen GPU-Arbeitsspeicher ermöglicht.

Entwickler, die mit Direct3D 9 vertraut sind, entdecken eine Reihe von Funktionsverbesserungen und Leistungsverbesserungen in Direct3D 10, darunter:

  • Die Möglichkeit, ganze Grundtypen in der neuen Geometry-Shader-Phase zu verarbeiten.
  • Die Möglichkeit, durch die Pipeline generierte Vertexdaten mithilfe der Streamausgabephase in den Arbeitsspeicher auszugeben.
  • Organisation des Pipelinezustands in 5 unveränderliche Zustandsobjekte, die eine schnelle Konfiguration der Pipeline ermöglichen.
  • Organisation von Shaderkonstanten in Konstantenpuffern, minimiert den Bandbreitenaufwand für die Bereitstellung von Shaderkonstantendaten.
  • Die Möglichkeit zum Ausführen eines primitiven Materialaustauschs und -setups mithilfe eines Geometrie-Shaders.
  • Neue Ressourcentypen (einschließlich Texturarrays, die von Shadern indiziert werden können) und Ressourcenformate.
  • Erhöhte Generalisierung des Ressourcenzugriffs mithilfe einer Ansicht.
  • Legacy-Hardwarefunktionsbits (Caps) wurden zugunsten eines umfangreichen Satz garantierter Funktionen entfernt, die auf Direct3D 10-Klassen-Hardware (Minimum) ausgerichtet sind.
  • Layered Runtime : Die Direct3D 10-API wird mit Ebenen erstellt, beginnend mit der grundlegenden Funktionalität im Kern und dem Erstellen optionaler und Entwicklerunterstützungsfunktionen (Debuggen usw.) in äußeren Schichten.
  • Vollständige HLSL-Integration: Alle Direct3D 10-Shader werden in HLSL geschrieben und mit dem Common-Shader-Kern implementiert.
  • Eine Erhöhung der Anzahl von Renderzielen, Texturen und Samplern. Es gibt auch keine Begrenzung der Shaderlänge.
  • Ganzzahlige und bitweise Shadervorgänge.
  • Readback einer Tiefen-/Schablonenoberfläche oder einer mehrstufigen Ressource, sobald sie nicht mehr als Renderziel gebunden ist.
  • Multisampled Alpha-to-Coverage-Unterstützung.

Es gibt zusätzliche Verhaltensunterschiede, die Auch Direct3D 9-Entwickler beachten sollten (siehe Überlegungen zu Direct3D 9 bis Direct3D 10).

Hier finden Sie eine Liste der Direct3D 9-Features, die entweder nicht mehr unterstützt oder in Direct3D 10 überarbeitet wurden (siehe veraltete Features).

Programmierhandbuch für Direct3D 10