rsq – vs
Berechnet die reziproke Quadratwurzel (nur positiv) des Quellskalars.
Syntax
rsq dst, src |
---|
where
- dst ist das Zielregister.
- src ist ein Quellregister. Das Quellregister erfordert die explizite Verwendung von repliziertem Swizzle, d. h. genau eine der Komponenten .x, .y, .z, .w swizzle (oder die Entsprechungen .r, .g, .b, .a) muss angegeben werden.
Bemerkungen
Vertex-Shaderversionen | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|
rsq | x | x | x | x | x | x |
Das folgende Codefragment zeigt die ausgeführten Vorgänge.
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;
Der absolute Wert wird vor der Verarbeitung genommen.
Die Genauigkeit sollte mindestens 1,0/(2²) absoluter Fehler über den Bereich (1,0, 4,0) betragen, da gängige Implementierungen Mantissa und Exponent trennen.
Wenn die Quelle keine Subscripts aufweist, wird die x-Komponente verwendet. Die Ausgabe muss genau 1,0 sein, wenn die Eingabe genau 1,0 ist. Eine Quelle von 0,0 ergibt Unendlichkeit.
Zugehörige Themen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für