u(t) is called 60 times per second.
t: Elapsed time in seconds.
S: Shorthand for Math.sin.
C: Shorthand for Math.cos.
T: Shorthand for Math.tan.
R: Function that generates rgba-strings, usage ex.: R(255, 255, 255, 0.5)
c: A 1920x1080 canvas.
x: A 2D context for that canvas.
I just can't get the color version down to size! i=frame;for(j=1080;j--;){a=i/500-2;b=j/500-1;for(k=75;k--&&a*a+b*b<4;)c=a*a-b*b-.7,b=2*a*b+.55,a=c;x.fillStyle=hsl(${C(k/9)*255},99%,50%);x.fillRect(i,j,1,1)}
Halfway there (150): for(j=2e3;j--;x.fillRect(t*60,j,1,1,x.fillStyle=hsl(${C(k/9)*255},99%,50%)))for(a=t*.12-2,b=j/500-1,k=75;k--&&a*a+b*b<4;a=c)c=a*a-b*b-.7,b=2*a*b+.55
Nice! Just six over now... for(j=2e3;j--;x.fillRect(t*60,j,1,1,x.fillStyle=hsl(${C(k/9)*99},99%,50%)))for(a=t/8-2,b=j/500-1,k=99;k--&&a*a+b*b<4;a=c)c=a*a-b*b-.7,b=2*a*b+.5
u(t) is called 60 times per second.
t: elapsed time in seconds.
c: A 1920x1080 canvas.
x: A 2D context for that canvas.
S: Math.sin
C: Math.cos
T: Math.tan
R: Generates rgba-strings, ex.: R(255, 255, 255, 0.5)