Token parametru źródłowego

Token parametru źródłowego opisuje właściwości rejestru źródłowego i składa się z następujących bitów:

Bitów

[10:00] Bits 0 through 10 indicate the register number (offset in register file).

[12:11] Bits 11 and 12 are the fourth and fifth bits [3,4] for indicating the register type.

[13] For a pixel shader (PS) versions earlier than 3_0, bit 13 is reserved and set to 0x0.

W przypadku cieniowania pikseli (PS) w wersji 3_0 lub nowszej oraz wszystkich wersji cieniowania wierzchołków (VS) bit 13 wskazuje, czy jest używany tryb adresowania względnego. If set to 1, relative addressing applies.

[15:14] Reserved for all versions of PS and VS. Ta wartość jest ustawiona na wartość 0x0.

[23:16] Bits 16 through 23 indicate channel swizzle. Wszystkie operacje arytmetyczne są wykonywane w czterech kanałach równoległych (X,Y,Z,W). Swizzle określa, który składnik źródłowy uczestniczy w kanale operacji. Aby uzyskać więcej informacji na temat aplikacji swizzle, zobacz najnowszą dokumentację zestawu Sdk DirectX. Bity tego pola określają wizzle dla następujących kanałów:

Bits Channel

17:16

Kanał Xwizzle

19:18

Kanał Y swizzle

21:20

Kanał Z swizzle

23:22

Kanał W swizzle

Następujące wartości w dowolnym zestawie poprzednich bitów określają składnik źródłowy, który ma być używany w kanale operacji:

Value Component

0x0

Używany jest składnik X.

0x1

Używany jest składnik Y.

0x2

Używany jest składnik Z.

0x3

Używany jest składnik W.

Jeśli na przykład 19:18 bitów ustawiono wartość 0x2, składnik Z jest używany jako źródło operacji kanału Y.

[27:24] Bits 24 through 27 indicate the source modifier. Ta wartość 4-bitowa wskazuje następujące typy modyfikatora źródłowego:

Value Typ modyfikatora źródłowego

0x0

None

0x1

Negate

0x2

Bias

0x3

Stronniczość i negowanie

0x4

Sign (bx2)

0x5

Podpisywanie (bx2) i negowanie

0x6

Complement

0x7

x2 (PS 1_4)

0x8

x2 i negate (PS 1_4)

0x9

dz (podziel przez składnik Z — PS 1_4)

0xa

dw (podziel przez składnik W âˆ' PS 1_4)

0xb

abs(x) wartość bezwzględna obliczeniowa

0xc

-abs(x) oblicza wartość bezwzględną i negację

0xd

NOT. Stosowane tylko do rejestru predykacji, który jest BOOL. W związku z tym jest to logiczne NOT.

0xe-0xf

Reserved

[30:28] Bits 28 through 30 are the first three bits [0,1,2] for indicating the register type.

[31] Bit 31 is 0x1.

komentarze

Bity 28, 29, 30, 11 i 12 tworzą wartość 5-bitową wskazującą typ rejestru. Aby uzyskać informacje o typach rejestrów, zobacz Typy rejestru cieniowania.

Wymagania

Dostępne w systemie Windows Vista i nowszych wersjach systemów operacyjnych Windows.