共用方式為


來源快取器閃爍 (HLSL PS 參考)

Swizzling 是指將任何來源緩存器元件複製到任何暫存緩存器元件的能力。 Swizzling 不會影響來源緩存器數據。 執行指令之前,來源緩存器中的數據會複製到暫存緩存器。

來源閃爍

來源 swizzle 可讓來源緩存器中的個別元件在讀取緩存器以進行計算之前,接受相同來源緩存器四個元件中的任何一個值。

例如,.zxxy swizzle 表示:

  • .x 元件將接受 .z 元件的值
  • .y 元件將接受 .x 元件的值
  • .z 元件將接受 .x 元件的值
  • .w 元件將接受 .y 元件的值

元件可以依任何順序顯示。 如果指定了少於四個元件,則會重複最後一個元件。 例如:

.xy  = .xyyy
.wzx = .wzxx
.z   = .zzzz

如果未指定任何元件,則不會套用任何閃爍。

某些指示有來源旋轉的限制。 它們會列在所遵守的指示參考頁面中。

圖元著色器版本 1_1 1_2 1_3 1_4 2_0 2_x 2_sw 3_0 3_sw
.x x x x x x x
.y x x x x x x
.z x* x* x* x x x x x x
.w x x x x x x x x x
.xyzw (預設值) x x x x x x x x x
.yzxw x x x x x
.zxyw x x x x x
.wzyx x x x x x
任意旋轉 x x x x

 

* 只有在目的地寫入遮罩為 .w (.a) 時才可使用。

任意 Swizzle

Swizzles 可以任意順序套用至來源緩存器;也就是說,任何來源緩存器都可以依任何順序取得任何元件遮罩。

復寫 Swizzle

復寫 swizzle 會將一個元件複製到另一個元件。 這是必須指定其中一個 .x、.y、.z、.w swizzle 元件(或 .r、.g、.b、.a 對等專案)。

像素著色器來源緩存器修飾詞

ps_1_1__ps_1_2__ps_1_3__ps_1_4 緩存器

ps_2_0 快取器

ps_2_x 快取器

ps_3_0 緩存器