precision mediump float;
uniform float u_time; // time
uniform vec2  u_resolution; // resolution
uniform vec2 u_mouse;

void main(){
	vec3 destColor = vec3(abs(sin(u_time)), 0.2, 0.1);
	vec2 p = (gl_FragCoord.xy * 2.0 - u_resolution) / min(u_resolution.x, u_resolution.y);
	float a = atan(p.y / p.x) * sin(u_time) * 10.0;
	float l = 0.05 / abs(length(p *abs(sin(u_time)) ) - 0.8 + sin(a + u_time * 3.5) * 0.004);
	
	destColor *= 0.5 + sin(a + u_time * 00.03) * 0.03;
	gl_FragColor = vec4(l*destColor, 1.0);
}
