dFdy函数是GLSL中的一个内置函数,用于计算函数在y方向(垂直于屏幕)上的导数。
float dFdy(float p)
p
:要计算导数的表达式或变量。返回p
在y方向上的导数值。
uniform sampler2D texture;
void main() {
vec4 color = texture2D(texture, gl_TexCoord[0].xy);
float gradient = dFdy(gl_TexCoord[0].y);
gl_FragColor = color + vec4(gradient, 0.0, 0.0, 1.0);
}
在此示例中,我们使用texture2D
内置函数从2D纹理采样器中获取颜色,并且我们使用dFdy
函数获取屏幕上像素在y方向上的变化量。最后,我们将该变化量添加到纹理采样器的颜色中来创建一个渐变效果。