expp – vs
Bietet eine teilweise exponentielle Genauigkeit von 2x.
Syntax
expp dst, src. {x|y|z|w} |
---|
Hierbei gilt:
- 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.
- {x|y|z|w} ist der erforderliche Replikationsschwindel im Quellregister.
Bemerkungen
Vertex-Shaderversionen | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|
expp | x | x | x | x | x | x |
vs_1_1
Die Anweisung exp - vs . funktioniert je nach Vertex-Shaderversionen unterschiedlich.
In vs_1_1 liefert die expp-Anweisung die folgenden Ergebnisse:
v = the scalar value from the source register with a replicate swizzle
dest.x = pow(2, floor(v))
dest.y = v - floor(v)
dest.z = pow(2, v) (partial-precision)
dest.w = 1
In vs_2_0 und höher liefert die expp-Anweisung die folgenden Ergebnisse:
v = the scalar value from the source register with a replicate swizzle
dest.x = dest.y = dest.z = dest.y = pow(2, v) (partial-precision)
vs_2_0
In vs_2_0 und höher funktioniert die Anweisung wie folgt:
float V = the scalar value from the source register with a replicate swizzle
dest.x = dest.y = dest.z = dest.y = pow( 2, V ) (partial-precision)
Die Anweisung bietet mindestens 10 Bit Genauigkeit.
Zugehörige Themen