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.
Thanks mate, I didn't really know how the encoding was done, so i came up with this solution function makeMagicString(data, width){ let buf = ''; let str = '' data.forEach((o,i)=>{ if(i%width===0 && i){ str += String.fromCharCode(parseInt(buf,2)); buf = ''; } buf += o?1:0; }) str += String.fromCharCode(parseInt(buf,2)) return str; }
where data is an array of 1 and 0 ex: [0,0,0,0,0,1,1,1,1,1,0,0,0,0,0, 0,0,0,1,1,1,0,0,0,1,1,1,0,0,0, 0,0,1,1,1,1,0,0,0,0,1,1,1,0,0, 0,1,1,1,1,0,0,1,1,1,0,1,1,1,0, 0,1,0,0,0,0,1,1,1,1,1,0,1,1,0, 1,0,1,1,0,0,0,1,1,1,0,0,0,0,1, 1,1,1,1,1,0,0,0,0,0,0,0,0,1,1, 1,0,1,1,0,0,0,0,0,0,0,0,1,1,1, 1,0,0,0,1,1,1,1,1,1,1,0,0,1,1, 0,1,1,1,0,0,1,0,1,0,0,1,1,1,0, 0,0,1,0,0,0,1,0,1,0,0,0,1,0,0, 0,0,0,1,0,0,0,0,0,0,0,1,0,0,0, 0,0,0,0,1,1,1,1,1,1,1,0,0,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)