rcp - vs
ソース スカラーの逆数を計算します。
構文
rcp dst, src |
---|
この場合
- dst はデスティネーション レジスタです。
- src はソース レジスタです。ソース レジスタでは、複製スィズルを明示的に使う必要があります。つまり、.x、.y、.z、.w スィズル要素 (または同等の .r、.g、.b、.a) のうち 1 つだけを指定しなければなりません。
解説
頂点シェーダーのバージョン | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|
rcp | x | x | x | x | x | x |
次のコードは、実行される演算を示しています。
float f = src0;
if(f == 0.0f)
{
f = FLT_MAX;
}
else
{
if(f != 1.0)
{
f = 1/f;
}
}
dest = f;
入力が 1.0 の場合は、出力も 1.0 になる必要があります。0.0 のソースは無限大です。
(1.0, 2.0) の範囲にわたって、出力の精度は、絶対値で少なくとも 1.0/(222) 以内の誤差を持つものである必要があります。これは、通常の実装では仮数と指数が分離されるためです。
ソースに添字がない場合は、x 要素が使用されます。