Procédure : exporter un nuanceurHow to: Export a Shader

Ce document indique comment utiliser le concepteur de nuanceur pour exporter un nuanceur DGSL (Directed Graph Shader Language) afin de pouvoir l’utiliser dans votre application.This document demonstrates how to use the Shader Designer to export a Directed Graph Shader Language (DGSL) shader so that you can use it in your app.

Ce document illustre cette activité :This document demonstrates this activity:

  • Exportation d’un nuanceurExporting a shader

Exportation d’un nuanceurExporting a shader

Après avoir créé un nuanceur à l’aide du concepteur de nuanceur et pour pouvoir l’utiliser dans votre application, vous devez l’exporter dans un format pris en charge par votre API de graphismes.After you create a shader by using the Shader Designer and before you can use it in your app, you have to export it in a format that your graphics API understands. Vous pouvez exporter un nuanceur de différentes façons en fonction de vos besoins.You can export a shader in different ways to meet different needs.

Pour exporter un nuanceurTo export a shader

  1. Dans Visual StudioVisual Studio, ouvrez un fichier Graphe de nuanceur visuel (.dgsl).In Visual StudioVisual Studio, open a Visual Shader Graph (.dgsl) file.

    Si vous ne disposez pas d’un fichier Graphe de nuanceur visuel (.dgsl), créez-en un en suivant la description de l’article Comment : créer un nuanceur de couleur de base.If you don't have a Visual Shader Graph (.dgsl) file to open, create one as described in How to: Create a Basic Color Shader.

  2. Dans la barre d’outils Concepteur de nuanceur, choisissez Avancé, Exporter, Exporter en tant que.On the Shader Designer toolbar, choose Advanced, Export, Export As. La boîte de dialogue Exporter le nuanceur s’affiche.The Export Shader dialog box is displayed.

  3. Dans la liste déroulante Type de fichier, choisissez le format d’exportation souhaité.In the Save as type drop-down list, choose the format that you want to export.

    Voici les formats que vous pouvez choisir :Here are the formats that you can choose:

    Nuanceur de pixels HLSL (*.hlsl) Exporte le nuanceur comme code source HLSL (High Level Shader Language).HLSL Pixel Shader (*.hlsl) Exports the shader as High Level Shader Language (HLSL) source code. Cette option permet de modifier le nuanceur ultérieurement, même après son déploiement dans une application.This option makes it possible to modify the shader later, even after it's deployed in an app. Elle peut faciliter le débogage et la mise à jour corrective du code basé sur les problèmes des utilisateurs finaux, mais elle permet également à un utilisateur de modifier plus facilement votre nuanceur de façon non souhaitée, par exemple, pour obtenir un avantage déloyal sur ses concurrents dans un jeu.This can make it easier to debug and patch the code based on end-user problems, but it also makes it easier for a user to modify your shader in unwanted ways—for example, to gain an unfair advantage in a competitive game. Cette option peut également augmenter la durée de chargement du nuanceur.It also might increase the load time of the shader.

    Nuanceur de pixels compilé (*.cso) Exporte le nuanceur comme bytecode HLSL.Compiled Pixel Shader (*.cso) Exports the shader as HLSL bytecode. Cette option permet de modifier le nuanceur ultérieurement, même après son déploiement dans une application.This option makes is possible to modify the shader later, even after it's deployed in an app. Elle peut faciliter le débogage et la mise à jour corrective du code basé sur les problèmes des utilisateurs finaux, mais comme le nuanceur est précompilé, elle n’entraîne pas de surcharge d’exécution supplémentaire lorsque le nuanceur est chargé par l’application.This can make it easier to debug and patch the code based on end-user problems, but because the shader is pre-compiled, it does not incur extra runtime overhead when the shader is loaded by the app. Les utilisateurs suffisamment compétents peuvent toujours modifier le nuanceur de manière indésirable, mais la compilation du nuanceur rend cette opération beaucoup plus difficile.Sufficiently skilled users can still modify the shader in unwanted ways, but compiling the shader makes this significantly more difficult.

    En-tête C++ (*.h) Exporte le nuanceur en tant qu’en-tête de style C qui définit un tableau d’octets contenant le bytecode HLSL.C++ Header (*.h) Exports the shader as a C-style header that defines a byte array that contains HLSL bytecode. Cette option peut allonger la durée du débogage et de la mise à jour corrective du code basé sur les problèmes des utilisateurs finaux, car l’application doit être recompilée pour tester le correctif.This option can make it more time-consuming to debug and patch the code based on end-user problems because the app must be recompiled to test the fix. Toutefois, comme cette option rend difficile, mais pas impossible, la modification du nuanceur après son déploiement dans une application, elle est celle qui présente le niveau de difficulté le plus élevé pour un utilisateur souhaitant modifier le nuanceur de manière indésirable.However, because this option makes it difficult, though not impossible, to modify the shader after it's deployed in an app, it presents the most difficulty to a user who wants to modify the shader in unwanted ways.

  4. Dans la zone de liste modifiable Nom de fichier, spécifiez un nom pour le nuanceur exporté, puis choisissez le bouton Enregistrer.In the File name combo box, specify a name for the exported shader, and then choose the Save button.

Voir aussiSee also