tex3Dgrad

使用渐变对 3D 纹理采样以选择 mip 级别。

ret tex3Dgrad (s, t, ddx, ddy)

parameters

说明
s
[in]采样器状态。
t
[in]纹理坐标。
ddx
[in]图面几何图形在 x 方向上的变化率。
ddy
[in]y 方向图面几何图形的变化速率。

返回值

纹理数据的值。

类型说明

“属性” 输入/输出 模板类型 组件类型 大小
S in 对象 sampler3D 1
t in 向量 FLOAT 3
ddx in 向量 FLOAT 3
ddy in 向量 FLOAT 3
Ret out 向量 float 4

最小着色器模型

以下着色器模型中支持此函数。

着色器模型 支持
着色器模型 4 是 (像素着色器仅)
着色器模型 3 (DirectX HLSL) 是 (像素着色器仅)
着色器模型 2 (DirectX HLSL) 是 (像素着色器仅)
着色器模型 1 (DirectX HLSL)
  1. 执行大量代码重新排序是为了将梯度计算移出流控制。
  2. 如果使用 D3DD3DPSHADERCAPS2_0_GRADIENTINSTRUCTIONS 设置D3DPSHADERCAPS2_0上限,则编译器会将此函数映射到 texldd。

备注

当着色器中存在流控制时,当相邻像素可能会向下走单独的流控制路径时,在给定分支路径内请求的渐变计算结果不明确。 因此,使用任何像素着色器操作(请求渐变计算在流控制构造内的位置发生),对于要光栅化的给定基元,这些位置可能会因像素而异,这被认为是非法的。 如果具有分支特性的 if 语句的任一端都使用渐变函数,则可能会生成编译器错误。 查看 语句是否 (DirectX HLSL)

另请参阅

内部函数 (DirectX HLSL)