- Écrire et compiler un nuanceur de maillage et (facultativement) un nuanceur d’amplification à l’aide de DXC.
- Créer un objet d’état de pipeline de nuanceurs de maillage à l’aide du bytecode de nuanceur compilé.
- Enregistrer la répartition de l’objet d’état de pipeline de nuanceurs de maillage à l’aide d’une liste de commandes.
- Exécuter la liste de commandes dans une file d’attente de commandes.
Objets d’état de pipeline de nuanceurs de maillage
Direct3D 12 expose le pipeline de nuanceurs de maillage au moyen des API familières d’objets d’état de pipeline graphique. La création de l’objet d’état de pipeline de nuanceurs de maillage utilise les API de flux d’état de pipeline, comme l’illustrent les deux exemples de code suivants. Les API ID3D12Device et ID3D12GraphicsCommandList permettent de vérifier la prise en charge matérielle et de répartir les charges de travail du pipeline de nuanceurs de maillage (deuxième exemple de code). Notez qu’il n’est pas nécessaire de vérifier la prise en charge matérielle sur la XBOX Series X|S. L’exemple de code suivant montre une description de flux de pipeline de nuanceurs de maillage à fournir aux API de création de flux de pipeline.Nuanceurs de maillage
Les nuanceurs de maillage sont compilés avec l’outil en ligne de commande DXC ou la bibliothèque du compilateur à l’aide du nouveau profil de nuanceur de maillage « ms », par exemple ms_6_5. Le troisième exemple de code fournit un exemple d’implémentation d’un nuanceur de maillage de triangle dans l’espace écran; suivez en utilisant cet exemple de code comme référence. Voici un exemple de compilation d’un nuanceur de maillage en ligne de commande.- NumThreads déclare la dimensionnalité du groupe de threads
- OutputTopology déclare le type de primitive
