ps_2_x

可编程像素着色器由一组对像素数据进行作的指令组成。 注册传入和传出 ALU 中的数据。 可以应用其他控件来修改指令、结果或写入的数据。

动态流控制

DynamicFlowControlDepth 表示动态流控制指令的嵌套深度:如果 if_compif_predbreak -psbreak_comp - ps,则。 该值等于if_comp块的嵌套深度。 如果此上限为零,则设备不支持动态流控制指令。

临时寄存器数

设备支持的临时寄存器数。 范围从 12 到 32。

静态流控制嵌套深度

StaticFlowControlDepth 表示两种类型的静态流控制指令的嵌套深度:循环 /代表调用 /callnz。 循环 /rep 指令可以嵌套到 StaticFlowControlDepth 深度。 独立调用 /callnz 指令可以嵌套到 StaticFlowControlDepth 深度。

指令槽数

指令槽数可以介于 96 到最大 512 个范围内,并由 MaxPixelShaderInstructionSlots指定。 可以运行的指令总数由 MaxPixelShaderInstructionsExecuted定义。 这可以大于循环和子例程调用导致的指令槽数。

任意重排

如果设置了 D3DD3DPSHADERCAPS2_0_ARBITRARYSWIZZLE,则支持任意重排。 请参阅 源注册重排

渐变指令

如果设置了 D3DD3DPSHADERCAPS2_0_GRADIENTINSTRUCTIONS,则支持渐变指令。 请参阅 dsx - psdsy - pstexldd - ps

预测

如果设置了 D3DD3DPSHADERCAPS2_0_PREDICATION,则支持指令谓词。 请参阅 谓词注册

从属读取限制

如果设置了 D3DD3DPSHADERCAPS2_0_NODEPENDENTREADLIMIT,则没有依赖读取限制。

纹理指令限制

如果设置了 D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT,则纹理指令没有限制。

采样器计数

可用的纹理采样器数为 16。

像素着色器