| ?/TD> |
| Microsoft DirectX 9.0 |
Computes the reciprocal square root (positive only) of the source scalar.
| rsq dst, src |
|---|
where
| Vertex shader versions | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
|---|---|---|---|---|---|---|
| rsq | x | x | x | x | x | x |
The following code fragment shows the operations performed.
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;
The absolute value is taken before processing.
Precision should be at least 1.0/(222) absolute error over the range (1.0, 4.0) because common implementations will separate mantissa and exponent.
If source has no subscripts, the x-component is used. The output must be exactly 1.0 if the input is exactly 1.0. A source of 0.0 yields infinity.
| Minimum operating system | Windows 98 |
|---|