rsq - vs
Calcule la racine carrée réciproque (positive uniquement) du scalaire source.
Syntaxe
rsq dst, src |
---|
where
- dst est le registre de destination.
- src est un registre source. Le registre source nécessite l’utilisation explicite de la réplication swizzle, c’est-à-dire exactement l’un des composants .x, .y, .z, .w swizzle (ou les équivalents .r, .g, .b, .a) doit être spécifié.
Notes
Versions du nuanceur de vertex | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|
Rsq | x | x | x | x | x | x |
Le fragment de code suivant montre les opérations effectuées.
float f = abs(src0);
if (f == 0)
f = FLT_MAX
else
{
if (f != 1.0)
f = 1.0/(float)sqrt(f);
}
dest.z = dest.y = dest.z = dest.w = f;
La valeur absolue est prise avant le traitement.
La précision doit être d’au moins 1,0/(2²²) erreur absolue sur la plage (1.0, 4.0), car les implémentations courantes séparent la mantisse et l’exposant.
Si la source n’a pas d’indices, le composant x est utilisé. La sortie doit être exactement 1.0 si l’entrée est exactement 1.0. Une source de 0,0 produit l’infini.
Rubriques connexes