precision mediump float;
varying vec2 a_pos;
uniform float u_time;
uniform vec2 u_resolution;
uniform vec4 u_mouse;
void mainImage( out vec4 c, in vec2 fc )
{
vec2 uv = fc / u_resolution;
// Create a simple gradient with time animation
vec3 color = 0.5 + 0.5 * cos(u_time + uv.xyx + vec3(0, 2, 4));
c = vec4(color, 1.0);
}
void main(void) {
vec2 uv = a_pos;
mainImage(gl_FragColor, uv);
}