rsq - vs

仅计算源标量) (正数的倒数平方根。

语法

rsq dst, src

 

其中

  • dst 是目标寄存器。
  • src 是源寄存器。 源寄存器需要显式使用复制重排,即必须指定 (或 .r、.g、.b、.a 等值) 的 .x、.y、.z、.w 重排组件之一。

备注

顶点着色器版本 1_1 2_0 2_x 2_sw 3_0 3_sw
rsq x x x x x x

 

以下代码片段显示执行的操作。

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;

绝对值是在处理之前获取的。

精度应至少为 1.0/ (2²²) (1.0、4.0) 范围内的绝对误差,因为常见实现将分隔 mantissa 和指数。

如果 source 没有下标,则使用 x 组件。 如果输入正好为 1.0,则输出必须恰好为 1.0。 0.0 的源生成无穷大。

顶点着色器说明