ona/debug/ca.frag

26 lines
571 B
GLSL

#version 430
layout (binding = 0) uniform sampler2D sprite;
layout (location = 0) in vec4 color;
layout (location = 1) in vec2 uv;
layout (location = 0) out vec4 texel;
layout (binding = 0) uniform Effect {
float effect_magnitude;
};
void main() {
vec4 color1 = texture(sprite, uv) / 3.0;
vec4 color2 = texture(sprite, uv + 0.002 * effect_magnitude) / 3.0;
vec4 color3 = texture(sprite, uv - 0.002 * effect_magnitude) / 3.0;
color1 *= 2.0;
color2.g = 0.0;
color2.b = 0.0;
color3.r = 0.0;
texel = color * (color1 + color2 + color3);
}