log - vs

Full precision log2(x).

Syntax

log dst, src

where

Remarks

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

The following code fragment shows the operations performed.

float v = abs(src);
if (v != 0)
{
    dest.x = dest.y = dest.z = dest.w = 
        (float)(log(v)/log(2));  
}
else
{
    dest.x = dest.y = dest.z = dest.w = -FLT_MAX;
}

This instruction accepts a scalar source whose sign bit is ignored. The result is replicated to all four channels.

This instruction provides 21 bits of precision.