constantes D3D10_SHADER
Options de compilation HLSL.
#define | Description |
---|---|
D3D10_SHADER_AVOID_FLOW_CONTROL | Indiquez au compilateur de ne pas autoriser le contrôle de flux (le cas échéant). |
D3D10_SHADER_DEBUG | Insérez des informations de fichier de débogage/ligne/type/symbole. |
D3D10_SHADER_ENABLE_STRICTNESS | Par défaut, le compilateur HLSL désactive la rigueur sur la syntaxe déconseillée. La spécification de cet indicateur active la rigueur qui peut ne pas autoriser la syntaxe héritée. |
D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY | Cela permet aux nuanceurs plus anciens de se compiler sur 4_0 cibles. |
D3D10_SHADER_FORCE_VS_SOFTWARE_NO_OPT | Compilez un nuanceur de vertex pour le profil de nuanceur le plus élevé suivant. Cette option active le débogage (et désactive les optimisations). |
D3D10_SHADER_FORCE_PS_SOFTWARE_NO_OPT | Compilez un nuanceur de pixels pour le profil de nuanceur le plus élevé suivant. Cette option active le débogage (et désactive les optimisations). |
D3D10_SHADER_IEEE_STRICTNESS | Active la rigueur IEEE. |
D3D10_SHADER_NO_PRESHADER | Désactive les preshaders. L’utilisation de cet indicateur entraîne l’extraction de l’expression statique par le compilateur pour l’évaluation. |
D3D10_SHADER_OPTIMIZATION_LEVEL0 | Niveau d’optimisation le plus bas. Peut produire du code plus lent, mais il le fera plus rapidement. Cela peut être utile dans un cycle de développement de nuanceur très itératif. |
D3D10_SHADER_OPTIMIZATION_LEVEL1 | Deuxième niveau d’optimisation le plus bas. |
D3D10_SHADER_OPTIMIZATION_LEVEL2 | Deuxième niveau d’optimisation le plus élevé. |
D3D10_SHADER_OPTIMIZATION_LEVEL3 | Niveau d’optimisation le plus élevé. Génère le meilleur code possible, mais peut prendre beaucoup plus de temps pour le faire. Cela sera utile pour les builds finales d’une application où les performances sont le facteur le plus important. |
D3D10_SHADER_PACK_MATRIX_ROW_MAJOR | Sauf indication explicite, les matrices sont empaquetées dans l’ordre principal des lignes sur l’entrée et la sortie du nuanceur. |
D3D10_SHADER_PACK_MATRIX_COLUMN_MAJOR | Sauf indication explicite, les matrices sont empaquetées dans l’ordre principal des colonnes sur l’entrée et la sortie du nuanceur. Cela est généralement plus efficace, car il permet d’effectuer la multiplication de matrices vectorielles à l’aide d’une série de produits par points. |
D3D10_SHADER_PARTIAL_PRECISION | Forcer l’exécution de tous les calculs avec une précision partielle ; cela peut s’exécuter plus rapidement sur certains matériels. |
D3D10_SHADER_PREFER_FLOW_CONTROL | Indiquez au compilateur d’utiliser le contrôle de flux (le cas échéant). |
D3D10_SHADER_SKIP_OPTIMIZATION | Ignorer l’optimisation pendant la génération de code ; généralement recommandé pour le débogage uniquement. |
D3D10_SHADER_SKIP_VALIDATION | Ne validez pas le code généré par rapport aux fonctionnalités et contraintes connues. Utilisez-le uniquement avec les nuanceurs qui ont été compilés avec succès dans le passé. Les nuanceurs sont toujours validés par DirectX avant qu’ils ne soient définis sur l’appareil. |
D3D10_SHADER_WARNINGS_ARE_ERRORS | Informez le compilateur HLSL de traiter tous les avertissements comme des erreurs lors de la compilation du code du nuanceur. Pour le nouveau code de nuanceur, vous devez utiliser cette option pour pouvoir résoudre tous les avertissements et garantir les moindres défauts de code difficiles à trouver. |
Ces constantes sont définies en tant que macros dans d3d10shader.h.
Rubriques connexes