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.
G=(a,b)=>b?G(b,a%b):a;L=(a,b)=>a*b/G(a,b);p=(i=39*Math.random()|0)*i+i+41;q=++i*i+i+41;n=p*q;e=65537;for(d=1;d*e%L(p-1,q-1)-1;d++);c=7;for(;--e;c=c*7%n);C=c;for(;--d;C=C*c%n);throw C
it should be possible to optimize the modular inversion and exponentiation, but it would probably go over the character limit
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)