階段 - ps

階段指令會標示階段 1 與階段 2 之間的轉換。 如果沒有階段指令存在,整個著色器就會像第 2 階段著色器一樣執行。

此指示僅適用于 1_4 版。

語法

phase

備註

圖元著色器版本 1_1 1_2 1_3 1_4 2_0 2_x 2_sw 3_0 3_sw
階段 x

 

階段指令之前發生的著色器指令是階段 1 指示。 所有其他指示都是階段 2 指示。 藉由有兩個階段的指示,每個著色器的最大指令數目就會增加。

階段轉換的可惜副作用是 暫存暫存器 Alpha 元件不會在轉換期間保存。 換句話說,Alpha 元件必須在階段指令之後重新初始化。

範例

此範例示範如何將指示分組為著色器內的階段 1 或階段 2 指令。

階段指令通常也稱為階段標記,因為它會標示階段 1 和 2 指示之間的轉換。 在 1_4 版圖元著色器中,如果階段標記不存在,著色器會執行,就像是在階段 2 中執行一樣。 這很重要,因為階段 1 和 2 指示和註冊可用性之間有差異。 參考區段會說明這些差異。

ps_1_4
  // Add phase 1 instructions here

phase
  // Add phase 2 instructions here

圖元著色器指示