diff --git a/res/shaders/effects/grayscale.glsl b/res/shaders/effects/grayscale.glsl new file mode 100644 index 00000000..e2702281 --- /dev/null +++ b/res/shaders/effects/grayscale.glsl @@ -0,0 +1,5 @@ +vec4 effect() { + vec3 color = texture(u_screen, v_uv).rgb; + float m = (color.r + color.g + color.b) / 3.0; + return vec4(mix(color, vec3(m), u_intensity), 1.0); +} diff --git a/res/shaders/effects/negative.glsl b/res/shaders/effects/negative.glsl new file mode 100644 index 00000000..6388a99d --- /dev/null +++ b/res/shaders/effects/negative.glsl @@ -0,0 +1,6 @@ +vec4 effect() { + vec4 color = texture(u_screen, v_uv); + color = mix(color, 1.0 - color, u_intensity); + color.a = 1.0; + return color; +}