Last active
October 16, 2024 19:44
-
-
Save JBlackCat/30f0273d61c668f9877c2491699be56c to your computer and use it in GitHub Desktop.
Linear Vertical Gradient Fragment Shader
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
uniform vec4 u_gradient_color_1;//#fa67ba | |
uniform vec4 u_gradient_color_2;//#b17ff5 | |
uniform float u_gradient_alpha_color_1;//0:1:0.53 | |
uniform float u_gradient_alpha_color_2;//0:1:1.00 | |
uniform float u_gradient_location_color_1;//0:1:0.00 | |
uniform float u_gradient_location_color_2;//0:1:0.96 | |
vec4 LinearVertGradient(float yCoord, vec4 color_1, float alpha_color_1, float location_color_1, vec4 color_2, float alpha_color_2, float location_color_2) { | |
color_1.a = alpha_color_1; | |
color_2.a = alpha_color_2; | |
float mPct = smoothstep(location_color_1, location_color_2, yCoord); | |
return mix(color_1, color_2, mPct); | |
} | |
void main() { | |
vec2 vUV = gl_FragCoord.xy/resolution.xy; | |
vec4 pixelOut = LinearVertGradient(vUV.y, u_gradient_color_1, u_gradient_alpha_color_1, u_gradient_location_color_1, u_gradient_color_2, u_gradient_alpha_color_2, u_gradient_location_color_2); | |
gl_FragColor = pixelOut; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment