Teilen über


Programmierhandbuch für HLSL

Daten geben die Grafikpipeline als Datenstrom von Grundtypen ein und werden von den Shaderphasen verarbeitet. Die tatsächlichen Shaderstufen hängen von der Version von Direct3D ab, enthalten aber sicher die Vertex-, Pixel- und Geometriestufen. Weitere Stufen umfassen die Hull- und Domänen-Shader für die Tessellation und den Compute-Shader. Diese Stufen können vollständig mit der High Level Shading Language (HLSL-) programmierbar sein.

HLSL-Shader können zur Erstellungszeit oder zur Laufzeit kompiliert und zur Laufzeit in die entsprechende Pipelinephase festgelegt werden. Direct3D 9-Shader können mit Shadermodell 1, Shadermodell 2 und Shadermodell 3entworfen werden; Direct3D 10-Shader können nur auf Shadermodell 4entworfen werden. Direct3D 11-Shader können auf Shadermodell 5entworfen werden. Direct3D 11.3 und Direct3D 12 können auf Shadermodell 5.1entworfen werden, und Direct3D 12 kann auch auf Shadermodell 6entworfen werden.

In diesem Abschnitt

Thema Beschreibung
Verwenden von Shaderverknüpfungs- Wir zeigen, wie Vorkompilierte HLSL-Funktionen erstellt, in Bibliotheken verpackt und zur Laufzeit mit vollständigen Shadern verknüpft werden.
Schreiben von HLSL-Shadern in Direct3D 9-
Verwenden von Shadern in Direct3D 9-
Verwenden von Shadern in Direct3D 10-
Optimieren von HLSL-Shadern
Debuggen von Shadern in Visual Studio Das neueste Tool zum Debuggen von Shadern wird jetzt als Feature in Microsoft Visual Studio bereitgestellt, das als Visual Studio-Grafikdebugger bezeichnet wird.
Kompilieren von Shadern Sehen wir uns nun verschiedene Möglichkeiten zum Kompilieren von Shadercode und Konventionen für Dateierweiterungen für Shadercode an.
Angeben von Compilerzielen Hier werden die Ziele für verschiedene Profile aufgeführt, die die D3DCompile* Funktionen und den HLSL-Compiler unterstützen.
Entpacken und Packen DXGI_FORMAT für In-Place Bildbearbeitung
Verwendung der HLSL-Mindestgenauigkeit Ab Windows 8 können Grafiktreiber minimale Genauigkeit HLSL-Skalardatentypen implementieren, indem sie eine beliebige Genauigkeit verwenden, die größer oder gleich ihrer angegebenen Bitgenauigkeit ist.
HLSL-Shadermodell 5
HLSL-Shadermodell 5.1 In diesem Abschnitt werden die Features von Shadermodell 5.1 beschrieben, wie sie in der Praxis auf D3D12 und D3D11.3 angewendet werden. Alle DirectX 12-Hardware unterstützt Shadermodell 5.1.
HLSL-Shadermodell 6.0 Beschreibt die systeminternen Wellenoperationen, die dem HLSL-Shadermodell 6.0 hinzugefügt wurden.
HLSL-Shadermodell 6.4 Beschreibt die systeminternen Machine Learning-Dateien, die hlSL-Shadermodell 6.4 hinzugefügt wurden.