constantes D3D10_SHADER
Options de compilation HLSL.
#define | Description |
---|---|
D3D10_SHADER_AVOID_FLOW_CONTROL | Demandez au compilateur de ne pas autoriser le contrôle de flux (si possible). |
D3D10_SHADER_DEBUG | Insérez des informations de fichier/ligne/type/symbole de débogage. |
D3D10_SHADER_ENABLE_STRICTNESS | Par défaut, le compilateur HLSL désactive la rigueur sur la syntaxe dépréciée. La spécification de cet indicateur permet une rigueur qui peut ne pas autoriser la syntaxe héritée. |
D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY | Cela permet aux nuanceurs plus anciens de compiler sur des cibles 4_0. |
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 les optimisations désactivées). |
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 les optimisations désactivées). |
D3D10_SHADER_IEEE_STRICTNESS | Active la rigueur IEEE. |
D3D10_SHADER_NO_PRESHADER | Désactive les preshaders. L’utilisation de cet indicateur entraîne le fait que le compilateur ne retire pas l’expression statique à des fins d’évaluation. |
D3D10_SHADER_OPTIMIZATION_LEVEL0 | Niveau d’optimisation le plus bas. Peut produire du code plus lent, mais le fera plus rapidement. Cela peut être utile dans un cycle de développement de nuanceur hautement 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 cela peut prendre beaucoup plus de temps. 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 des lignes principales lors de l’entrée et de la sortie du nuanceur. |
D3D10_SHADER_PACK_MATRIX_COLUMN_MAJOR | Sauf indication explicite, les matrices sont empaquetées dans l’ordre des colonnes principales lors de l’entrée et de la sortie du nuanceur. Cela est généralement plus efficace, car il permet d’effectuer une multiplication de matrices vectorielles à l’aide d’une série de produits point. |
D3D10_SHADER_PARTIAL_PRECISION | Forcer tous les calculs à effectuer avec une précision partielle ; cela peut s’exécuter plus rapidement sur certains matériels. |
D3D10_SHADER_PREFER_FLOW_CONTROL | Demandez au compilateur d’utiliser le contrôle de flux (si possible). |
D3D10_SHADER_SKIP_OPTIMIZATION | Ignorer l’optimisation pendant la génération du 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 des nuanceurs qui ont été compilés avec succès dans le passé. Les nuanceurs sont toujours validés par DirectX avant d’être 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 du nuanceur, vous devez utiliser cette option afin de pouvoir résoudre tous les avertissements et garantir le moins de défauts de code difficiles à trouver. |
Ces constantes sont définies en tant que macros dans d3d10shader.h.
Rubriques connexes