指示 - vs_2_0

本節包含頂點著色器 2_0 版指示的參考資訊。

頂點著色器指令有數種類型,如表格所示。 右邊的資料行表示下列各項:

  • 指令位置 - 每個指令所使用的指令位置數目。
  • 安裝程式 - 非算術指示。 每個著色器都必須有版本指令,而且必須是第一個指令。
  • 算術 - 這些指示會在著色器中提供數學運算。
  • 流程式控制制 - 這些指示會新增流程式控制制功能,例如 迴圈...endloopif...else...endif - vs和副程式呼叫。
  • 新增 - 這些指示是這個版本的新功能。

指令集

名稱 描述 指令位置 安裝程式 算術 流量控制 新增
abs - 與 絕對值 1 x x
add - vs 新增兩個向量 1 x
call - vs 呼叫副程式 2 x x
callnz bool - vs 如果布林暫存器不是零,則呼叫副程式 3 x x
crs - vs 跨產品 2 x x
dcl_usage輸入 (sm1、sm2、sm3 - 與 asm) 宣告輸入頂點暫存器 (請參閱暫存器 - vs_2_0) 0 x
def - vs 定義常數 0 x
defb - vs 定義布林常數 0 x x
defi - vs 定義整數常數 0 x x
dp3 - vs 三個元件點產品 1 x
dp4 - vs 四個元件點產品 1 x
dst - vs 計算距離向量 1 x
else - vs 開始 其他專案 - 與 區塊 1 x x
endif - vs 結束 if bool - vs...else - vs block 1 x x
endloop - vs 迴圈結尾 - 與區塊 2 x x
endrep - vs 重複區塊結尾 2 x x
exp - vs 完整精確度 2x 1 x
expp - vs 部分有效位數 2x 1 x
frc - vs 小陣列件 1 x
if bool - vs 如果 bool - vs block (使用布林值條件) 開始 3 x x
label - vs 標籤 0 x x
lit - vs 部分光源計算 3 x
log - vs 完整精確度記錄檔 (x) 1 x
logp - vs 部分精確度記錄檔 (x) 1 x
迴圈 - vs Loop 3 x x
lrp - vs 線性插補 2 x 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 將資料從浮點暫存器移至位址暫存器, (a0) 1 x x
mul - vs 乘以 1 x
nop - vs 無作業。 1 x
nrm - vs 標準化 4D 向量 3 x x
pow - vs xy 3 x x
rcp - vs 互惠 1 x
rep - vs Repeat 3 x x
ret - vs 副程式或 main 的結尾 1 x x
rsq - vs 相互平方根 1 x
sge - vs 大於或等於比較 1 x
sgn - vs 簽署 3 x x
sincos - vs 正弦和余弦 8 x x
slt - vs 小於比較 1 x
sub - vs 減去 1 x
vs 版本 0 x

 

頂點著色器指示