Échantillonneur (Direct3D 9 ASM-PS)

Un échantillonneur est un Pseudo-registre d’entrée pour un nuanceur de pixels, qui est utilisé pour identifier la phase d’échantillonnage. Il y a 16 registres de l’étape d’échantillonnage du nuanceur de pixels : S0 à S15. Par conséquent, jusqu’à 16 surfaces de texture peuvent être lues dans une seule passe de nuanceur. Les instructions qui utilisent un registre d’échantillonnage sont texld et texldp.

L’échantillonneur doit être déclaré avant d’être utilisé avec l’instruction DCL _ samplerType (SM2, SM3-PS ASM) .

Versions de nuanceur de pixels 1_1 1_2 1 _ 3 1_4 2 _ 0 2 _ logiciels 2 _ x 3 _ 0 3 _ logiciels
Échantillonneur x x x x x

Les échantillonneurs sont des Pseudo-registres, car vous ne pouvez pas les lire ou les écrire directement.

Une unité d’échantillonnage correspond à la phase d’échantillonnage de texture, en encapsulant l’état spécifique à l’échantillonnage fourni par SetSamplerState. Chaque échantillonneur identifie de façon unique une surface de texture unique, qui est définie sur l’échantillonneur correspondant à l’aide de SetTexture. Toutefois, la même surface de texture peut être définie sur plusieurs échantillonneurs.

Au moment du tracé, une texture ne peut pas être définie simultanément comme une cible de rendu et une texture à une étape.

Un échantillonneur peut apparaître comme le seul argument dans l’instruction de chargement de texture : texldl-PS.

Dans PS _ 3 _ 0, si un échantillonneur est utilisé, il doit être déclaré au début du programme du nuanceur à l’aide de l’instruction DCL _ samplerType (SM2, SM3-PS ASM) .

L’échantillonnage d’une texture avec une dimension supérieure à celle présente dans les coordonnées de texture n’est pas conforme. L’échantillonnage d’une texture avec une dimension inférieure à celle qui est présente dans les coordonnées de texture ignore les coordonnées de texture supplémentaires.

Inscrit