命令 - vs_3_0

このトピックでは、頂点シェーダー バージョン 3_0 の命令のリファレンス情報について説明します。

表に示すように、頂点シェーダーの命令にはいくつかの種類があります。右側の列の意味は次のとおりです。

  • 命令スロット - 各命令で使われる命令スロットの数です。
  • セットアップ - 非算術命令すべてのシェーダーにはバージョン命令が必要で、それが最初の命令でなければなりません。
  • 算術 - これらの命令は、シェーダー内の算術演算を行います。
  • テクスチャー - これらの命令は、テクスチャー アドレス ルックアップをサポートします。
  • フロー制御 - これらの命令は、ループ、繰り返し、if bool - vs...else...endif 比較などのフロー制御を追加します。
  • 新規 - これらの命令は、このバージョンで新たに追加された命令です。

命令セット

名前 説明 命令スロット セットアップ 算術 テクスチャー フロー制御 新規
abs - vs 絶対値 1 x
add - vs 2 つのベクトルの加算 1 x
break - vs loop - vs...endloop - vs または rep...endrep ブロックから抜け出す 1 x
break_comp - vs 比較条件に応じて、loop - vs...endloop - vs または rep...endrep ブロックから抜け出す 3 x
breakp - vs プレディケーションに基づいて、loop - vs...endloop - vs または rep...endrep ブロックから抜け出す 3 x
call - vs サブルーチンを呼び出します。 2 x
callnz bool - vs ブール型レジスタが 0 でない場合にサブルーチンを呼び出します。 3 x
callnz pred - vs プレディケーション レジスタが 0 でない場合にサブルーチンを呼び出します。 3 x
crs - vs 外積 2 x
dcl_usage input (sm1, sm2, sm3 - vs asm) 頂点入力レジスタの宣言 (「レジスタ - vs_3_0」を参照) 0 x
dcl_samplerType (sm3 - vs asm) サンプラのテクスチャー ディメンジョンの宣言 0 x x
def - vs 定数の定義 0 x
defb - vs ブール型定数の宣言 0 x
defi - vs 整数型定数の宣言 0 x
dp3 - vs 3 要素の内積 1 x
dp4 - vs 4 要素の内積 1 x
dst - vs Distance 1 x
else - vs else ブロックを開始します。 1 x
endif - vs if bool - vs...else ブロックの終了 1 x
endloop - vs loop - vs ブロックの終了 2 x
endrep - vs 繰り返しブロックを終了します。 2 x
exp - vs 完全精度の 2x 1 x
exp - vs 部分精度の 2x 1 x
frc - vs 小数部 1 x
if bool - vs (ブール条件を使用した) if bool - vs ブロックの開始 3 x
if_comp - vs 比較に基づいて、if bool - vs ブロックを開始 3 x
if pred - vs プレディケーション条件に基づいて、if bool - vs ブロックを開始 3 x
label - vs ラベル 0 x
lit - vs ライティングの計算 3 x
log - vs 完全精度の log2(x) 1 x
logp - vs 部分精度の log2(x) 1 x
loop - vs Loop 3 x
lrp - vs 線形補間 2 x
m3x2 - vs 3x2 行列乗算 2 x
m3x3 - vs 3x3 行列乗算 3 x
m3x4 - vs 3x4 行列乗算 4 x
m4x3 - vs 4x3 行列乗算 3 x
m4x4 - vs 4x4 行列乗算 4 x
mad - vs 乗算と加算 1 x
max - vs 最大 1 x
min - vs 最小 1 x
mov - vs 移動 1 x
mova - vs 浮動小数点レジスタから整数レジスタへのデータの移動 1 x
mul - vs 乗算 1 x
nop - vs 操作なし 1 x
nrm - vs 正規化 3 x
pow - vs xy 3 x
rcp - vs 逆数 1 x
rep - vs 繰り返します。 3 x
ret - vs サブルーチンの終了です。 1 x
rsq - vs 逆数平方根 1 x
setp_comp - vs プレディケーション レジスタを設定します。 1 x
sge - vs 以上 1 x
sgn - vs Sign 3 x
sincos - vs サインおよびコサイン 8 x
slt - vs より小さい 1 x
sub - vs 減算 1 x
texldl - vs ユーザーが調整可能な詳細レベルのテクスチャーのロード 注意 1 を参照 x x
vs バージョン 0 x

注意 :

  1. テクスチャーがキューブ マップの場合は slots = 5 になり、それ以外の場合は slots = 2 になります。