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.
NICE! you could zoom the ripples for a psychodelic wave like this for(c.width=X=64,w=30;X--;)for(Y=38;Y--;x.fillStyle=R(o=S(S(X/9*Y/9)+(Math.hypot(X-32,Y-21)/13-t)*5)*230,o*.8,-o))x.fillRect(X,Y,1,1)
or pixelate, for some retro style, and mess with the colors: for(w=30,X=64,w=30;X--;)for(Y=38;Y--;x.fillStyle=R(o=S(S(X/9*Y/9)+(Math.hypot(X-32,Y-21)/13-t)*5)*230,-o,o))x.fillRect(X*w,Y*w,w,w)
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)