常量整数寄存器 (HLSL PS 引用)

常量整数寄存器仅用于 循环 - psrep - ps

可以使用 defi 设置它们 - psSetPixelShaderConstantI

用作循环的参数时 - ps 指令:

  • .x 是迭代计数。 (rep - ps 仅使用此组件) 。
  • .y 是循环计数器的初始值。
  • .z 是循环计数器的增量步骤。
像素着色器版本 1_1 1_2 1_3 1_4 2_0 2_sw 2_x 3_0 3_sw
常量整数寄存器 x x x

 

着色器常量的行为在 Direct3D 8 和 Direct3D 9 之间发生了变化。

  • 对于 Direct3D 9,使用 defx 将值设置为着色器常量空间的常量。 使用 defx 声明的常量的生存期仅限于执行该着色器。 相反,使用 API SetXXXShaderConstantX 在全局空间中初始化常量设置常量。 在调用 SetxxxShaderConstants 之前,全局 (空间中的常量不会复制到对着色器可见的本地空间) 。
  • 对于 Direct3D 8,使用 defx 或 API 设置的常量都向着色器常量空间赋值。 每次执行着色器时,当前着色器都会使用常量,而不考虑用于设置它们的技术。

寄存器