23 lines
577 B
GLSL
23 lines
577 B
GLSL
#version 100
|
|
precision mediump float;
|
|
uniform float u_time;
|
|
uniform vec2 u_resolution;
|
|
|
|
void main() {
|
|
vec2 uv = (gl_FragCoord.xy * 2.0 - u_resolution.xy) / u_resolution.y;
|
|
vec2 u0 = uv;
|
|
vec3 finalColor = vec3(0.0);
|
|
|
|
for (float i = 0.0; i < 4.0; i++) {
|
|
uv = fract(uv * 1.5) - 0.5;
|
|
float d = length(uv) * exp(-length(u0));
|
|
vec3 col = vec3(0.2, 0.5, 0.82);
|
|
d = sin(d * 8.0 + u_time) / 8.0;
|
|
d = abs(d);
|
|
d = pow(0.01 / d, 1.2);
|
|
finalColor += col * d;
|
|
}
|
|
|
|
gl_FragColor = vec4(finalColor, 1.0);
|
|
}
|