源参数标记

源参数令牌描述源寄存器的属性,由以下位组成:

[10:00] 位 0 到 10 指示寄存器文件) 中的寄存器编号 (偏移量。

[12:11] 位 11 和 12 是用于指示 寄存器类型的第四位和第五位 [3,4]。

[13] 对于低于 3_0 的 PS) 版本的像素着色器 (,将保留位 13 并将其设置为0x0。

对于像素着色器 (PS) 版本 3_0 及更高版本以及所有版本的顶点着色器 (VS) ,位 13 指示是否使用相对寻址模式。 如果设置为 1,则应用 相对寻址

[15:14] 保留给所有版本的 PS 和 VS。 此值设置为 0x0。

[23:16] 位 16 到 23 指示通道 重排。 所有算术运算在四个 (X、Y、Z、W) 并行通道中执行。 重排指定哪个源组件参与操作通道。 有关重排的详细信息,请参阅最新的 DirectX SDK 文档。 此字段的位指定以下通道的重排:

Bits 通道

17:16

通道 X 重排

19:18

通道 Y 重排

21:20

通道 Z 重排

23:22

通道 W 重排

上述任意一组位中的以下值指定在操作通道中使用的源组件:

“值” 组件

0x0

使用组件 X。

0x1

使用组件 Y。

0x2

使用组件 Z。

0x3

使用组件 W。

例如,如果 19:18 位设置为 0x2,则组件 Z 用作通道 Y 操作的源。

[27:24] 位 24 到 27 指示源修饰符。 此 4 位值指示以下源修饰符类型:

源修饰符类型

0x0

0x1

Negate

0x2

偏差

0x3

偏差和否定

0x4

(bx2) 签名

0x5

(bx2) 和否定签名

0x6

补充

0x7

x2 (PS 1_4)

0x8

x2 和否定 (PS 1_4)

0x9

dz (除以 Z 分量 - PS 1_4)

0xa

dw (除以 W 组件 âˆ' PS 1_4)

0xb

abs (x) 计算绝对值

0xc

-abs (x) 计算绝对值和求反值

0xd

不。 仅适用于谓词寄存器,即 BOOL。 因此,这是逻辑 NOT。

0xe-0xf

预留

[30:28] 位 28 到 30 是指示 寄存器类型的前三位 [0,1,2]。

[31] 位 31 为0x1。

备注

位 28、29、30、11 和 12 形成一个指示寄存器类型的 5 位值。 有关寄存器类型的信息,请参阅 着色器寄存器类型

要求

在 Windows Vista 和更高版本的 Windows 操作系统中可用。