地址寄存器
a0 寄存器是地址寄存器。 单个寄存器在版本vs_1_1中可用。 地址寄存器(在 vs_1_1 中指定为 a0.x)可用作将相对寻址到常量寄存器文件中的带符号整数偏移量。 对于vs_2_0及更高版本, (.x、.y、.z、.w) 的所有四个组件都可用于相对寻址。
c[a0.x + n]
地址寄存器不能由顶点着色器读取,它只能用于常量寄存器的相对寻址。 读取超出法定范围的值将返回 (0.0、0.0、0.0、0.0、0.0) 。 地址寄存器只能是 mov - vs 指令的目标。 如果将浮点数移动到整数寄存器中,则会发生从舍入到最接近的转换。
所有着色器必须先初始化地址寄存器,然后才能使用它。 对于vs_2_0及更高版本, mova - vs 指令可以将浮点值移动到地址寄存器。
顶点着色器版本 | 1_1 | 2_0 | 2_sw | 2_x | 3_0 | 3_sw |
---|---|---|---|---|---|---|
地址寄存器 | x | x | x | x | x | x |
相关主题