Partager via


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.

constantes de nuanceur