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.
Can you fit the 3:d color with this (reduced 21 bytes)? a=c.width=99;d=x.getImageData(0,0,a,a);for(i=3e4;i--;)d.data[i]=i%396+[b=S(i/5e3+t),-b,,i][i%4]*a;x.putImageData(d,0,0)
a 3 color test added on icecubers code a=c.width=99;d=x.getImageData(0,0,a,a);for(i=3e4;i--;)d.data[i]=i%396+[S(q=i/5e3+t)*0.6,S(q+t)*0.3,S(q+t*4),i][i%4]*a;x.putImageData(d,0,0)
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)