rsq - vs
Calcola la radice quadrata reciproca (solo positiva) del scalare di origine.
Sintassi
rsq dst, src |
---|
dove
- dst è il registro di destinazione.
- src è un registro di origine. Il registro di origine richiede l'uso esplicito di swizzle replicate, ovvero è necessario specificare esattamente uno dei componenti .x, .y, .z, .w swizzle (o .r, .g, .b, .a equivalenti).
Commenti
Versioni del vertex shader | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|
Rsq | x | x | x | x | x | x |
Il frammento di codice seguente mostra le operazioni eseguite.
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;
Il valore assoluto viene acquisito prima dell'elaborazione.
La precisione deve essere almeno 1,0/(2²²) errore assoluto nell'intervallo (1,0, 4,0) perché le implementazioni comuni separano mantissa ed esponente.
Se l'origine non contiene pedice, viene usato il componente x. L'output deve essere esattamente 1.0 se l'input è esattamente 1.0. Una fonte di 0,0 produce infinito.
Argomenti correlati