_registres PS 2 _ x

Les nuanceurs de pixels dépendent des registres pour obtenir des données de vertex, pour produire des données de pixels, pour conserver des résultats temporaires pendant les calculs et pour identifier les étapes d’échantillonnage de texture. Il existe plusieurs types de registres, chacun avec une fonctionnalité unique. Cette section contient des informations de référence pour les registres d’entrée et de sortie implémentés par le nuanceur de pixels version 2 _ x.

Types de registres d’entrée

S’inscrire Nom Nombre R/W (Lecture/écriture) # Ports de lecture # Lectures/inst Dimension RelAddr Valeurs par défaut DCL obligatoire
v# Registre des couleurs d’entrée 2 R 1 Illimité 4 N Partiel (0001). Voir la remarque 4 O
r# Registre temporaire Voir la remarque 1 R/W (Lecture/écriture) 3 Illimité 4 N None N
c# Registre à virgule flottante constante 32 R 1 2 4 N 0000 N
cliqu# Registre d’entiers constant 16 Voir la remarque 2 1 1 4 N 0000 N
b# Registre booléen constant 16 Voir la remarque 2 1 1 1 N FALSE N
P0 Registre de prédicat 1 Voir la remarque 2 1 1 1 N None O
s# Échantillonneur (Direct3D 9 ASM-PS) 16 Voir la remarque 3 1 1 4 N Voir la remarque 5 O
t# Registre de coordonnées de texture 8 R 1 1 4 N None O

Remarques :

  1. 12 min/32 max : le nombre de # registres r est déterminé par D3DPSHADERCAPS2 _ 0. NumTemps (qui est compris entre 12 et 32).
  2. Utilisable uniquement par une instruction de contrôle de Flow.
  3. Utilisable uniquement par une instruction d’échantillonnage de texture.
  4. Partial (x, y, z, w) : si seul un sous-ensemble de canaux est mis à jour dans le registre, les autres canaux ont par défaut les valeurs spécifiées (x, y, z, w).
  5. Les valeurs par défaut pour les recherches d’échantillonneur existent, mais les valeurs dépendent du format de texture.

Le nombre de readports est le nombre de registres différents (pour chaque type de registre) qui peuvent être lus dans une instruction unique.

Types de registres de sortie

S’inscrire Nom Nombre R/W (Lecture/écriture) Dimension RelAddr Valeurs par défaut DCL obligatoire
c # Registre des couleurs de sortie Voir les textures à plusieurs éléments (Direct3D 9) W 4 N None N
oDepth Registre de profondeur de sortie 1 W 1 N None N

Inscrit