Spécification de cibles de compilateur
Vous devez spécifier la cible de nuanceur (jeu de fonctionnalités de nuanceur) à compiler lorsque vous appelez la fonction D3DCompile, D3DCompile2ou D3DCompileFromFile . Ici, nous répertorions les cibles pour les différents profils que les fonctions D3DCompile * et le compilateur HLSL prennent en charge.
- Niveaux de fonctionnalité Direct3D 11,0 et 11,1
- Niveau de fonctionnalité Direct3D 10,1
- Niveau de fonctionnalité Direct3D 10,0
- Niveaux de fonctionnalité Direct3D 9,1, 9,2 et 9,3
- Modèle de nuanceur Direct3D 9 hérité 3,0
- Modèle de nuanceur Direct3D 9 hérité 2,0
- Modèle de nuanceur Direct3D 9 hérité 1. x
- Effets hérités
- Remarques
- Rubriques connexes
Niveaux de fonctionnalité Direct3D 11,0 et 11,1
Voici les cibles de nuanceur que les niveaux de fonctionnalité Direct3D 11,0 et 11,1 prennent en charge.
| Cible | Description |
|---|---|
| CS _ 5 _ 0 | DirectCompute 5,0 (nuanceur de calcul) |
| DS _ 5 _ 0 | Nuanceur de domaine |
| GS _ 5 _ 0 | Nuanceur Geometry |
| HS _ 5 _ 0 | Nuanceur de coque |
| PS _ 5 _ 0 | Nuanceur de pixels |
| vs _ 5 _ 0 | Nuanceur de sommets |
Niveau de fonctionnalité Direct3D 10,1
Voici les cibles de nuanceur que le niveau de fonctionnalité Direct3D 10,1 prend en charge.
| Cible | Description |
|---|---|
| CS _ 4 _ 1 | DirectCompute 4,1 (nuanceur de calcul) ¹ |
| GS _ 4 _ 1 | Nuanceur Geometry |
| PS _ 4 _ 1 | Nuanceur de pixels |
| vs _ 4 _ 1 | Nuanceur de sommets |
Niveau de fonctionnalité Direct3D 10,0
Voici les cibles de nuanceur que le niveau de fonctionnalité Direct3D 10,0 prend en charge.
| Cible | Description |
|---|---|
| CS _ 4 _ 0 | DirectCompute 4,0 (nuanceur de calcul) ¹ |
| GS _ 4 _ 0 | Nuanceur Geometry |
| PS _ 4 _ 0 | Nuanceur de pixels |
| vs _ 4 _ 0 | Nuanceur de sommets |
Niveaux de fonctionnalité Direct3D 9,1, 9,2 et 9,3
Voici les cibles de nuanceur que les niveaux de fonctionnalité Direct3D 9,1, 9,2 et 9,3 prennent en charge.
Notes
Lorsque vous utilisez les * _ _ _ _ _ profils de nuanceur HLSL de 4 niveaux 9 x, vous utilisez implicitement les profils Shader Model 2. x pour prendre en charge le matériel compatible Direct3D 9. Les profils Shader Model 2. x prennent en charge un comportement de contrôle de Flow plus limité que le modèle de nuanceur 4. x et versions ultérieures.
| Cible | Description |
|---|---|
| ps_4_0_level_9_1 | Nuanceur de pixels pour 9,1 et 9,2 (limites similaires à ps_2_0)
|
| ps_4_0_level_9_3 | Nuanceur de pixels pour 9,3 (limites similaires à ps_2_x ² avec des fonctionnalités de nuanceur supplémentaires)
|
| vs_4_0_level_9_1 | Vertex shader pour 9,1 et 9,2 (semblable à vs_2_0)
|
| vs_4_0_level_9_3 | Vertex shader pour 9,3 (semblable à vs_2_a ² avec des fonctionnalités de nuanceur supplémentaires et l’instanciation)
|
Modèle de nuanceur Direct3D 9 hérité 3,0
Voici les cibles de nuanceur pour le modèle de nuanceur Direct3D 9 hérité 3,0 ³.
| Cible | Description |
|---|---|
| PS _ 3 _ 0 | Nuanceur de pixels 3,0 |
| _logiciel PS 3 _ | Nuanceur de pixels 3,0 (logiciel) |
| vs _ 3 _ 0 | Vertex shader 3,0 |
| vs _ 3 _ SW | Vertex shader 3,0 (logiciel) |
Modèle de nuanceur Direct3D 9 hérité 2,0
Voici les cibles de nuanceur pour le modèle de nuanceur Direct3D 9 hérité 2,0 ³.
| Cible | Description |
|---|---|
| PS _ 2 _ 0 | Nuanceur de pixels 2,0 |
| PS _ 2 _ a | Nuanceur de pixels 2A |
| PS _ 2 _ b | Nuanceur de pixels 2b |
| _logiciel PS 2 _ | Logiciel nuanceur de pixels 2,0 |
| vs _ 2 _ 0 | Vertex shader 2,0 |
| vs _ 2 _ a | Nuanceur de sommet 2A |
| vs _ 2 _ SW | Logiciel vertex shader 2,0 |
Modèle de nuanceur Direct3D 9 hérité 1. x
Voici les cibles de nuanceur pour le modèle de nuanceur Direct3D 9 hérité 1. x ⁴.
| Cible | Description |
|---|---|
| TX _ 1 _ 0 | Profil de nuanceur de texture qui utilise les fonctions D3DX9 ⁵ héritées D3DXCreateTextureShader et D3DXFillTextureTX |
| vs _ 1 _ 1 | Vertex shader 1,1 |
Effets hérités
Voici les objectifs des effets hérités.
| Cible | Description |
|---|---|
| FX _ 2 _ 0 | Effets (FX) pour Direct3D 9 dans D3DX9 ⁵ |
| FX _ 4 _ 0 | Effets (FX) pour Direct3D 10,0 dans D3DX10 ⁵ |
| FX _ 4 _ 1 | Effets (FX) pour Direct3D 10,1 dans D3DX10 ⁵ |
| FX _ 5 _ 0 | Effets (FX) pour Direct3D 11 ⁵ |
Notes
Voici quelques remarques à propos desquelles les sections précédentes font référence :
- les appareils de niveau de fonctionnalité 10,0 et 10,1 peuvent éventuellement prendre en charge DirectCompute. Pour vérifier la prise en charge, utilisez ID3D11Device :: CheckFeatureSupport avec d3d11 _ Feature _ D3D10 _ X _ Hardware _ options.
- le niveau de fonctionnalité 9,3 requiert en fait un matériel conforme aux exigences du modèle de nuanceur Direct3D 9 hérité 3,0, mais ce niveau de fonctionnalité n’utilise pas les _ cibles vs 3 _ 0 ou PS _ 3 _ 0.
- Utilisez uniquement les modèles de nuanceur Direct3D 9 hérités avec l’API Direct3D 9. Utilisez plutôt les profils 9. x avec les API Direct3D 10. x et 11. x.
- Les fonctions de D3DCompile * de nuanceur HLSL actuelles ne prennent pas en charge les nuanceurs de pixels hérités 1. x. La dernière version du langage HLSL pour la prise en charge de ces cibles était D3DX9 dans la version d’octobre 2006 du kit de développement logiciel (SDK) DirectX.
- Toutes les versions de D3DX et du SDK DirectX sont déconseillées. Pour plus d’informations, consultez où est le kit de développement logiciel (SDK) DirectX ?.