samplepos (SM 4.1-ASM)
Interroge la position d’un exemple dans une vue de ressource de nuanceur donnée ou dans le rastériseur.
| samplepos dest [ . Mask ] , srcResource [ . Swizzle ] , sampleIndex (opérande scalaire) |
|---|
| Élément | Description |
|---|---|
| dest |
[dans ] l’adresse des résultats de l’opération. |
| srcResource |
[dans ] la ressource de nuanceur. |
| sampleIndex |
[dans ] l’index de l’exemple. |
Notes
Cette instruction retourne la position d’échantillon 2D de l’exemple de sampleIndex pour la ressource donnée. Elle est valide uniquement pour les ressources qui peuvent être chargées à l’aide de ld2dms , sauf si le rastériseur est spécifié en tant que srcResource.
srcResource peut être un # Registre t (affichage des ressources de nuanceur) ou un registre de rastérisation.
L’instruction calcule le vecteur à virgule flottante (XPosition, YPosition, 0, 0).
Swizzle sur srcResource permet aux valeurs retournées d’être swizzled arbitrairement avant d’être écrites dans la destination. La position de l’échantillon est relative au centre du pixel, en fonction du système de coordonnées en pixels.
Si sampleIndex est hors limites, un vecteur zéro est retourné. Si aucune ressource n’est liée à l’emplacement spécifié, la valeur 0 est retournée.
samplepos peut être utilisé pour des tâches telles que des résolutions personnalisées dans le code du nuanceur.
Cette instruction s’applique aux étapes suivantes du nuanceur :
| Nuanceur de sommets | Nuanceur de géométrie | Nuanceur de pixels |
|---|---|---|
| x |
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 | non |
| Shader Model 3 (DirectX HLSL) | non |
| Shader Model 2 (DirectX HLSL) | non |
| Shader Model 1 (DirectX HLSL) | non |