Guide de programmation pour HLSL

Les données entrent dans le pipeline graphique en tant que flux de primitives et sont traitées par les étapes du nuanceur. Les phases de nuanceur réelles dépendent de la version de Direct3D, mais incluent certainement les étapes de vertex, de pixels et de géométrie. D’autres étapes incluent les nuanceurs de coque et de domaine pour le pavage et le nuanceur de calcul. Ces étapes sont entièrement programmables à l’aide du langage HLSL (High Level Shading Language).

Les nuanceurs HLSL peuvent être compilés au moment de l’auteur ou au moment de l’exécution, et définis au moment de l’exécution dans l’étape de pipeline appropriée. Les nuanceurs Direct3D 9 peuvent être conçus à l’aide du modèle de nuanceur 1, du modèle de nuanceur 2 et du modèle de nuanceur 3 ; Les nuanceurs Direct3D 10 ne peuvent être conçus que sur le modèle de nuanceur 4. Les nuanceurs Direct3D 11 peuvent être conçus sur le modèle de nuanceur 5. Direct3D 11.3 et Direct3D 12 peuvent être conçus sur le modèle de nuanceur 5.1, et Direct3D 12 peut également être conçu sur le modèle de nuanceur 6.

Contenu de cette section

Rubrique Description
Utilisation de la liaison de nuanceur Nous montrons comment créer des fonctions HLSL précompilées, les empaqueter dans des bibliothèques et les lier dans des nuanceurs complets au moment de l’exécution.
Écriture de nuanceurs HLSL dans Direct3D 9
Utilisation de nuanceurs dans Direct3D 9
Utilisation de nuanceurs dans Direct3D 10
Optimisation des nuanceurs HLSL
Débogage des nuanceurs dans Visual Studio Le dernier outil de débogage des nuanceurs est désormais fourni en tant que fonctionnalité dans Microsoft Visual Studio, appelée Débogueur Visual Studio Graphics.
Compilation des nuanceurs Examinons maintenant différentes façons de compiler votre code de nuanceur et les conventions pour les extensions de fichiers pour le code de nuanceur.
Spécification des cibles du compilateur Ici, nous listons les cibles pour les différents profils que les fonctions D3DCompile* et le compilateur HLSL prennent en charge.
Déballage et empaquetage des DXGI_FORMAT pour l’édition d’images In-Place
Utilisation de la précision minimale HLSL À compter de Windows 8, les pilotes graphiques peuvent implémenter des types de données scalaires HLSL de précision minimale en utilisant toute précision supérieure ou égale à la précision de bits spécifiée.
HLSL Shader Model 5
HLSL Shader Model 5.1 Cette section décrit les fonctionnalités du modèle de nuanceur 5.1 telles qu’elles s’appliquent dans la pratique à D3D12 et D3D11.3. Tout le matériel DirectX 12 prend en charge le modèle de nuanceur 5.1.
Modèle de nuanceur HLSL 6.0 Décrit les intrinsèques de l’opération d’onde ajoutées au modèle HLSL Shader 6.0.
HLSL Shader Model 6.4 Décrit les intrinsèques d’apprentissage automatique ajoutées au modèle de nuanceur HLSL 6.4.