取样器 (Direct3D 9 asm-vs)

采样器是顶点着色器的输入伪寄存器,用于标识采样阶段。 有四个顶点着色器采样器:s0 到 s3。 可以在单个着色器通道中读取四个纹理图面。

(Direct3D 9 asm-vs) 的采样器是伪寄存器,因为你无法直接读取或写入它们。

采样单元对应于纹理采样阶段,封装 SetSamplerState 提供的特定于采样的状态。 每个采样器唯一标识单个纹理表面,该图面使用 SetTexture 设置为相应的采样器。 但是,可以在多个采样器中设置相同的纹理图面。

在绘制时,纹理不能同时设置为呈现目标和阶段的纹理。

由于有四个采样器,因此最多可以在单个着色器通道中读取四个纹理图面。 采样器可能显示为纹理加载指令中的唯一参数: texldl - vs.

在 vs_3_0,如果使用采样器,则需要使用 dcl_samplerType (sm3 - vs asm) 指令在 着色器程序的开头声明它。

顶点着色器版本 1_1 2_0 2_sw 2_x 3_0 3_sw
取样器 x x

 

顶点着色器寄存器

vs_3_0 (DirectX HLSL) 中的顶点纹理