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.
thank you! the protrusions on top made me think of horns. the color was red while i was working on it, but then that pattern came out and it looked too devilish for my tastes. so i changed it to green
I like the red hue r=Math.random;for(i=k=128;i--;x.fillRect(k*X,k*Y,i/t,i/t))X=r(Y=r()*9)*16,x.fillStyle=R(h=k*C(3*C((p=X*X/15-X)+S(Y*Y/3-3*Y))+p/Y)+k,h*.2) It is quite demonic looking- the ofspring of HAL 9000 and the devil
this is also quite interesting r=Math.random;for(i=k=128;i--;x.fillRect(k*X,k*Y,i/t,i/t))X=r(Y=r()*9)*16,x.fillStyle=R(h=k*C(3*C((p=X*X/15-X)+S(Y*Y-3*Y))+p/Y)+k,T(h/i)*99)
hunh...i wonder whether the scanline method gives results that are indistinguishable from the both-dimensions-random method. if so, then the r variable can be golfed away
maybe they'd look mostly the same with this type of dweet, since the shrinking squares fill up so much space. under other circumstances though, i would imagine that "t" only comes in multiples of 1/60th, so S(t) is likewise constrained. ¯\_(ツ)_/¯
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)