ps_3_0の手順
このセクションには、ピクセル シェーダー バージョン 3_0 命令のリファレンス情報が含まれています。
表に示すように、ピクセル シェーダー命令にはいくつかの種類があります。 右側の列は次を意味します。
- 命令スロット - 各命令で使用される命令スロットの数。
- セットアップ - ピクセル シェーダーにはバージョン命令が必要であり、最初の命令である必要があります。
- 算術 - これらの命令は、シェーダーの算術演算を提供します。
- テクスチャ - これらの手順は、テクスチャ データの読み込みとサンプリング、およびテクスチャ座標の変更に使用されます。
- フロー制御 - これらの命令は、命令の実行に静的および動的なフロー制御を提供します。
- 新規 - これらの手順は、このバージョンの新機能です。
命令セット
Name | 説明 | 命令スロット | セットアップ | 算術 | テクスチャ | フロー制御 | 新規作成 |
---|---|---|---|---|---|---|---|
abs - ps | 絶対値 | 1 | x | ||||
add - ps | 2 つのベクトルを追加する | 1 | x | ||||
break - ps | ループから抜け出す...endloop または rep...endrep ブロック | 1 | x | ||||
break_comp - ps | 条件付きでループから抜け出す...endloop または rep...endrep ブロック(比較あり) | 3 | x | ||||
breakp - ps | ループから抜け出す...endloop または rep...述語に基づく endrep ブロック | 3 | x | ||||
call - ps | サブルーチンを呼び出す | 2 | x | ||||
callnz bool - ps | ブール値レジスタが 0 でない場合はサブルーチンを呼び出す | 3 | x | ||||
callnz pred - ps | 述語レジスタが 0 でない場合はサブルーチンを呼び出す | 3 | x | ||||
cmp - ps | ソースを 0 と比較する | 1 | x | ||||
crs - ps | クロス製品 | 2 | x | ||||
dcl_samplerType (sm2, sm3 - ps asm) | サンプラーのテクスチャ ディメンションを宣言する | 0 | x | ||||
dcl_semantics (sm3 - ps asm) | 入力レジスタと出力レジスタを宣言する | 0 | x | x | |||
def - ps | 定数を定義する | 0 | x | ||||
defb - ps | ブール定数を定義する | 0 | x | ||||
defi - ps | 整数定数を定義する | 0 | x | ||||
dp2add - ps | 2D ドット積と追加 | 2 | x | ||||
dp3 - ps | 3D ドット積 | 1 | x | ||||
dp4 - ps | 4D ドット積 | 1 | x | ||||
dsx - ps | x 方向の変化率 | 2 | x | ||||
dsy - ps | y 方向の変化率 | 2 | x | ||||
else - ps | else ブロックを開始する | 1 | x | ||||
endif - ps | if... を終了します。else ブロック | 1 | x | ||||
endloop - ps | ループを終了する | 2 | x | x | |||
endrep - ps | 繰り返しブロックの末尾 | 2 | x | ||||
exp - ps | 完全精度 2x | 1 | x | ||||
frc - ps | 小数部のコンポーネント | 1 | x | ||||
if bool - ps | if ブロックを開始する | 3 | x | ||||
if_comp - ps | 比較を使用して if ブロックを開始する | 3 | x | ||||
pred の場合 - ps | 事前指定を使用して if ブロックを開始する | 3 | x | ||||
label - ps | Label | 0 | x | ||||
log - ps | 完全有効桁数 log₂(x) | 1 | x | ||||
loop - ps | Loop | 3 | x | x | |||
lrp - ps | 線形補間 | 2 | x | ||||
m3x2 - ps | 3x2 乗算 | 2 | x | ||||
m3x3 - ps | 3x3 乗算 | 3 | x | ||||
m3x4 - ps | 3x4 乗算 | 4 | x | ||||
m4x3 - ps | 4x3 乗算 | 3 | x | ||||
m4x4 - ps | 4 x 4 乗算 | 4 | x | ||||
mad - ps | 乗算と加算 | 1 | x | ||||
max - ps | 最大値 | 1 | x | ||||
min - ps | 最小値 | 1 | x | ||||
mov - ps | 詳細ビュー | 1 | x | ||||
mul - ps | 乗算 | 1 | x | ||||
nop - ps | 操作なし | 1 | x | ||||
nrm - ps | Normalize (正規化) | 3 | x | ||||
pow - ps | xy | 3 | x | ||||
ps | バージョン | 0 | x | ||||
rcp - ps | 相互 | 1 | x | ||||
rep - ps | Repeat | 3 | x | ||||
ret - ps | サブルーチンの終了 | 1 | x | ||||
rsq - ps | 逆平方根 | 1 | x | ||||
setp_comp | 述語レジスタを設定する | 1 | x | ||||
sincos - ps | サインとコサイン | 8 | x | ||||
sub - ps | 減算 | 1 | x | ||||
texkill - ps | ピクセル レンダリングを強制終了する | 2 | x | ||||
texld - ps_2_0以降 | テクスチャのサンプリング | 注 1 を参照してください | x | ||||
texldb - ps | w コンポーネントからの詳細レベルバイアスを使用したテクスチャ サンプリング | 6 | x | ||||
texldl - ps | w コンポーネントからの詳細レベルを使用したテクスチャ サンプリング | 注 2 を参照 | x | x | |||
texldd - ps | ユーザー指定のグラデーションを使用したテクスチャ サンプリング | 3 | x | ||||
texldp - ps | 投影を w コンポーネントで除算したテクスチャ サンプリング | 注 3 を参照してください | x |
メモ:
- テクスチャがキューブ マップの場合、スロットは 4 になります。それ以外の場合、スロット = 1。
- テクスチャがキューブ マップの場合、スロットは 5 になります。それ以外の場合、スロット = 2。
- テクスチャがキューブ マップの場合、スロットは 4 になります。それ以外の場合、スロット = 3。
関連トピック