High-Level-Shaderprogrammiersprache (HLSL)

HLSL ist die C-ähnliche High-Level-Shadersprache, die Sie mit programmierbaren Shadern in DirectX verwenden.

Sie können z. B. HLSL verwenden, um einen Vertex-Shader oder einen Pixel-Shader zu schreiben und diese Shader in der Implementierung des Renderers in Ihrer Direct3D-Anwendung zu verwenden.

Alternativ können Sie HLSL verwenden, um einen Compute-Shader zu schreiben, z. B. um eine Physiksimulation zu implementieren. Wenn Sie jedoch beispielsweise dazu neigen, Ihren eigenen Faltungsoperator (für die Bildverarbeitung) als HLSL in einem Compute-Shader zu schreiben, erzielen Sie in diesem Szenario eine bessere Leistung, wenn Sie stattdessen Direct Machine Learning (DirectML) verwenden.

HLSL wurde (ab DirectX 9) erstellt, um die programmierbare 3D-Pipeline einzurichten. Sie können die gesamte Pipeline mit HLSL-Anweisungen programmieren.

Wohin als nächstes?

Programmierhandbuch für HLSL

Eine konzeptionelle Einführung in HLSL finden Sie im Programmierhandbuch für HLSL.

Im Programmierhandbuch werden die verschiedenen Arten von Shaderphasen und das Erstellen, Kompilieren, Optimieren, Binden und Verknüpfen von Shadern erläutert.

Dort finden Sie auch Übersichten und Versionshinweise zu den aufeinanderfolgenden Generationen von Shadermodellversionen, die veröffentlicht wurden, bis hin zum HLSL-Shadermodell 5.

Referenz für HLSL

Die HLSL-Referenzdokumentation finden Sie in der Referenz für HLSL.

Der Referenzabschnitt enthält eine vollständige Auflistung der Sprachsyntax und der in HLSL integrierten intrinsischen Funktionen, um Ihre Codierungsanforderungen zu vereinfachen.

Dort finden Sie auch eine Diskussion über Shadermodelle im Vergleich zu Profilen und Shadermodell-Referenzinhalten, die bis zum HLSL-Shadermodell 1 zurückgehen. Es gibt auch Inhalte zu Assemblyanweisungen, dem D3DCompiler-Tool und Informationen zu den Fehlern und Warnungen, die ein Shader zurückgeben kann.