Files
oak-editor/effects/chromaticaberration.frag
T

22 lines
593 B
GLSL

#version 110
uniform vec2 resolution;
uniform sampler2D tex;
varying vec2 vTexCoord;
uniform float red_amount;
uniform float green_amount;
uniform float blue_amount;
void main(void) {
vec2 rOffset = vec2(red_amount*0.01)/resolution;
vec2 gOffset = vec2(green_amount*0.01)/resolution;
vec2 bOffset = vec2(blue_amount*0.01)/resolution;
vec4 rValue = texture2D(tex, vTexCoord - rOffset);
vec4 gValue = texture2D(tex, vTexCoord - gOffset);
vec4 bValue = texture2D(tex, vTexCoord - bOffset);
gl_FragColor = vec4(rValue.r, gValue.g, bValue.b, texture2D(tex, vTexCoord).a);
}