EndlessRoll/app/build/intermediates/assets/debug/shader/particleFragmentShader.glsl

27 lines
646 B
GLSL

precision mediump float;
uniform sampler2D texture;
uniform vec3 color;
uniform float alpha;
varying vec2 pass_TexCoords;
vec3 saturateColor(in vec3 color, in float a);
void main() {
float a = texture2D(texture, pass_TexCoords).a * alpha;
vec3 black = vec3(0.0, 0.0, 0.0);
gl_FragColor.rgb = mix(color, black, 1.0 - a);
gl_FragColor.a = a;
}
vec3 saturateColor(in vec3 color, in float a){
float grayscale = (color.r * 0.299 + color.g * 0.587 + color. b * 0.114);
float alpha = ((1.1 - a) * 0.5) * 40.0;
return alpha * color + (1.0 - alpha) * vec3(grayscale, grayscale, grayscale);
}