GLSL 内置函数
textureProjGrad()
在投影纹理中显式指定采样梯度。
示例版本:GLSL ES 3.00 / WebGL 2示例阶段:片段
函数签名
gvec4 textureProjGrad(gsampler2D sampler, vec3 coord, vec2 dx, vec2 dy)参数
- sampler
- 绑定的测试纹理
- coord
- 采样坐标
- dx
- 屏幕 X 方向的坐标梯度
- dy
- 屏幕 Y 方向的坐标梯度
返回值
坐标经过投影除法后,使用显式梯度过滤得到的四个采样分量。
在线示例
修改右侧代码,左侧预览会实时更新。
textureProjGrad 做什么
在投影纹理中显式指定采样梯度。
看懂预览
vec3(uv,0.8) 扩张图像坐标,.03 梯度独立控制模糊。把除数改成 1.0,可去掉投影缩放,同时保留原有模糊。
核心调用
textureProjGrad(u_texture,vec3(uv,0.8),vec2(.03,0),vec2(0,.03)).rgb;
导数参数的维数对应投影后的纹理坐标。
修改实验
把 textureProjGrad 中两处 .03 梯度改为 .003。投影网格会变清晰,0.8 的除法和边界延伸位置都不变。