samplepos (sm4.1 - asm)
Interroge la position d’un échantillon dans une vue de ressource de nuanceur donnée ou dans le rastériseur.
samplepos dest[.mask], srcResource[.swizzle], sampleIndex |
---|
Élément | Description |
---|---|
Dest |
[in] Adresse des résultats de l’opération. |
srcResource |
[in] Ressource de nuanceur. |
sampleIndex |
[in] Index de l’exemple (opérande scalaire). |
Remarques
Cette instruction retourne la position d’exemple 2D de l’exemple sampleIndex pour la ressource donnée. Il 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# (une vue de ressource de nuanceur) ou un registre de rastériseur.
L’instruction calcule le vecteur à virgule flottante (Xposition, Yposition, 0, 0).
Le swizzle sur srcResource permet aux valeurs retournées d’être swizzled arbitrairement avant d’être écrites dans la destination. La position de l’exemple est relative au centre du pixel, en fonction du système de coordonnées de pixels.
Si sampleIndex est hors limites, un vecteur zéro est retourné. Si aucune ressource n’est liée à l’emplacement spécifié, 0 est retourné.
samplepos peut être utilisé pour des opérations 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 | Pris en charge |
---|---|
Modèle de nuanceur 5 | Oui |
Modèle de nuanceur 4.1 | Oui |
Modèle de nuanceur 4 | Non |
Modèle de nuanceur 3 (DirectX HLSL) | Non |
Shader Model 2 (DirectX HLSL) | Non |
Modèle de nuanceur 1 (DirectX HLSL) | Non |