expp - vs

Fournit une précision partielle exponentielle 2x.

Syntaxe

expp dst, src. {x|y|z|w}

 

Où :

  • dst est le registre de destination.
  • src est un registre source. Le registre source nécessite l’utilisation explicite de répliquer 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é.
  • {x|y|z|w} est le swizzle de réplication requis sur le registre source.

Notes

Versions du nuanceur de vertex 1_1 2_0 2_x 2_sw 3_0 3_sw
Expp x x x x x x

 

vs_1_1

L’instruction exp - vs fonctionne différemment selon les versions du nuanceur de vertex.

Dans vs_1_1, l’instruction expp donne les résultats suivants :

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

Dans vs_2_0 et au-dessus, l’instruction expp donne les résultats suivants :

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

Dans vs_2_0 et au-dessus, l’instruction fonctionne comme suit :

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)

L’instruction fournit au moins 10 bits de précision.

Instructions du nuanceur de vertex