varying vec2 uv; uniform float cycle; uniform float offset; uniform sampler2D texture; void main() { vec3 sample = texture2D(texture,uv - vec2(cycle, 0.0)).rgb * (1.0 - uv.x); if(abs((uv.x + 1.0) - (mod(cycle + offset, 1.0) * 2.0)) < 0.3) sample *= 1.3; gl_FragColor.rgb = ((sample - vec3(0.5)) * 2.0 + gl_Color.rgb) * gl_Color.a; gl_FragColor.a = 0.0; }