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.
This is actually 115 bytes so only an 11 byte reduction over hex encoding, because each of the 10 codepoints takes up 3 bytes each when utf8 encoded, (over the wire, in the DB or in a local file)
Loving seeing all the remixes. I've had another observation. The top left and bottom right segments are always filled. That means the binary can be reduced from 15 bits to 13 bits. Or a max value of 32,767 to 8,191. Would that help to compress things further?
@NiVZ redundancies are a good thing to look for, but the tricky thing is figuring out if it's worth the extra code to pull out the info from the other side, sometimes you just gotta try and see if it saves bytes.
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)