texld - ps_1_4

使用源寄存器的内容作为纹理坐标 (RGBA) 加载颜色数据的目标寄存器。 采样的纹理是与目标寄存器编号关联的纹理。

texld dst, src

 

寄存器

说明 vn 快递 之 家 Tn Rn 像素着色器版本
dst 目标寄存器 x 1_4
src 源寄存器 x 1_4 阶段 1
x x 1_4 阶段

 

使用 r (n) 作为源寄存器时,XYZ) (前三个组件必须在着色器的上一阶段初始化。

若要详细了解寄存器,请参阅 ps_1_1__ps_1_2__ps_1_3__ps_1_4寄存器

备注

本指令对与目标寄存器编号关联的纹理阶段中的纹理采样。 使用源寄存器中的纹理坐标数据对纹理进行采样。

texld 和 texcrd 指令的语法公开了使用纹理寄存器修饰符对投影除法的支持。 对于像素着色器版本 1.4,始终忽略D3DTTFF_PROJECTED纹理转换标志。

使用 texld 的规则:

  1. 相同的 .xyz 或 .xyw 修饰符必须应用于 texcrd 或 texld 指令中的单个 t (n) 寄存器的每次读取。 如果在 t (n) 寄存器读取上使用 .xyw,则可以将其与使用 .xyw_dw 的同一 t (n) 寄存器的其他读取混合使用。
  2. _dz源修饰符仅在 r (n) 源寄存器 (texld 上有效,因此阶段 2 仅) 。
  3. 每个着色器可以使用_dz源修饰符不超过两次。
像素着色器版本 1_1 1_2 1_3 1_4 2_0 2_x 2_sw 3_0 3_sw
texld x

 

示例

texld 指令提供了一些控制使用源纹理坐标数据的组件。 texld 的完整允许语法集如下,包括所有有效的源寄存器修饰符、选择器和写入掩码组合。

texld  r(m), t(n).xyz
// Uses xyz from t(n) to sample 1D, 2D, or 3D texture
texld  r(m), t(n)
// Same as previous
texld  r(m), t(n).xyw
// Uses xyw (skipping z) from t(n) to sample 1D, 2D or 3D texture
texld  r(m), t(n)_dw.xyw  
// Samples 1D or 2D texture at x/w, y/w from t(n). The result
// is undefined for a cube-map lookup.
texld  r(m), r(n).xyz
// Samples 1D, 2D, or 3D texture at xyz from r(m) 
// This is possible in the second phase of the shader
texld  r(m), r(n)
// Same as previous
texld  r(m), r(n)_dz.xyz
// Samples 1D or 2D texture at x/z, y/z from r(m)
// Possible only in second phase
// The result is undefined for a cube-map lookup
texld  r(n), r(n)_dz
// Same as previous

像素着色器说明