DCL _ indexRange (SM4-ASM)
Déclare une plage de registres accessibles par index (un entier calculé dans le nuanceur).
| DCL _ IndexRange minRegisterM, maxRegisterN |
|---|
| Élément | Description |
|---|---|
| minRegisterM |
dans Premier registre auquel accéder par index.
|
| maxRegisterN |
dans Dernier registre auquel accéder par index. Même forme que minRegister , sauf que N est le numéro du Registre. |
Les restrictions suivantes s’appliquent à tous les registres :
- Les registres min et Max doivent être du même type et avoir les mêmes masques de composant (si les masques sont déclarés).
- Un registre peut avoir plusieurs plages d’index, à condition qu’elles ne se chevauchent pas.
- Le numéro de Registre minimal doit être inférieur au nombre maximal de registres.
- Un registre d’index ne peut pas contenir une valeur système.
- L’indexation d’un registre en dehors de la déclaration d’index max génère des résultats indéfinis.
Les registres d’entrée de nuanceur de pixels doivent utiliser le même mode d’interpolation ; les registres de sortie du nuanceur de pixels ne sont pas indexables.
Un registre d’entrée de nuanceur Geometry a deux dimensions (axe de vertex, axe d’attribut); la plage d’index s’applique uniquement à l’axe des attributs, car l’axe des vertex est toujours entièrement indexé.
Cette instruction s’applique aux étapes suivantes du nuanceur :
| Nuanceur de sommets | Nuanceur de géométrie | Nuanceur de pixels |
|---|---|---|
| x | x | x |
Cette instruction est incluse pour faciliter le débogage d’un nuanceur dans l’assembly. vous ne pouvez pas créer de nuanceur dans un langage assembleur à l’aide du nuanceur modèle 4.
Exemple
Voici un exemple.
dcl_indexRange v1, v3
dcl_indexRange v4, v9
Modèle de nuanceur minimal
Cette fonction est prise en charge dans les modèles de nuanceur suivants.
| Modèle de nuanceur | Prise en charge |
|---|---|
| Shader, modèle 5 | Oui |
| Modèle de nuanceur 4,1 | Oui |
| Nuanceur modèle 4 | Oui |
| Shader Model 3 (DirectX HLSL) | Non |
| Shader Model 2 (DirectX HLSL) | Non |
| Shader Model 1 (DirectX HLSL) | Non |