expp - vs

Provides partial precision exponential 2x.

Syntax

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

Where:

Remarks

Vertex shader versions 1_1 2_0 2_x 2_sw 3_0 3_sw
expp x x x x x x

vs_1_1

The exp - vs instruction operates differently depending on vertex shader versions.

In vs_1_1, the expp instruction gives the following results:

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 and up, the expp instruction gives the following results:

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 and up, the instruction works like this:

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)

The instruction provides at least 10 bits of precision.