dwitter.net | Qwitter (18657)

+ New dweet
function u(t) {
} //
122/140


Please log in (or register) to post a dweet (copy-paste the code somewhere safe to save it meanwhile)


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.
Try the new frontend: beta.dwitter.net
Current theme challenge: #Opposites
show FPS hide FPS share fullscreen

function u(t) {

}//
139/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • Hollow and somewhat damaged Menger sponge
  • u/New_Core
    "You will be assimilated. Resistance is futile." (comes up in my mind when I see it)
  • u/UEZ
    Well done. Looks very nice. Can somebody explain me what this is about: [a,b,z]=x[q]||[0,0,6.3]. I assume it has something to do with arrays... Thx :-)
  • u/tomxor
    It's called destructuring. The right hand side simply evaluates to an array (x[q] or [0,0,6.3] is x[q] is falsey). Then the elements of this array are assigned to variable names based on positions on the left, e.g a=0, b=0, z=6.3. Note that the left hand side is syntactic sugar, it's not an array literal.
  • u/UEZ
    @tomxor: thx for your explanation. :-)
  • u/aleamb
    #p3d #cube #menger #fractal

Please log in (or register) to comment.

show FPS hide FPS share 1 remix fullscreen

function u(t) {

}//
133/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • Eye
  • u/Xen
    Welcome to the dwitter family!

Please log in (or register) to comment.

show FPS hide FPS share fullscreen

function u(t) {

}//
136/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

Please log in (or register) to comment.

show FPS hide FPS share 1 remix fullscreen

function u(t) {

}//
140/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

Please log in (or register) to comment.

show FPS hide FPS share fullscreen
remix of d/21783 by u/tomxor

function u(t) {

}//
140/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • u/tomxor
    Squashed each ant into a 16bit bit field, [X,Y,D] = 0b 111111 111111 0111. These ants were generated with: X=7,Y=7,D=0,[[-X,-Y,3+D],[+Y,-X,2+D],[+X,+Y,1+D],[-Y,+X,0+D]].map(([X,Y,D])=>X+60<<10|Y+32<<4|D%4<<0)
  • u/mark1626
    This is incredible. Just one question, how does s = u[a >> 4] ^= 1 work?
  • u/tomxor
    Thanks :) a>>4 is the cell index of a 64x64 grid. the lower 4 bits are for the ant's direction so shifting them off to the right leaves only the 12 X and Y bits (see above). u is just an object, so all of these indicies will be undefined initially, but undefined is falsey and bitwise operators coerce falsey into 0, i.e undefined ^ 1 == 0 ^ 1 == 1, in otherwords XOR just treats all of the initial cell values as 0. Using the assignment version ^= means we toggle each cell between 0 and 1 each time an ant passes through it (which is part of the langton ant rules).

Please log in (or register) to comment.

show FPS hide FPS share 1 remix fullscreen

function u(t) {

}//
140/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

Please log in (or register) to comment.

show FPS hide FPS share 2 remixes fullscreen
remix of d/21475 by u/erin

function u(t) {

}//
105/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • golfed, made water blue, etc. room for fun, if anyone wants to try anything

Please log in (or register) to comment.

show FPS hide FPS share fullscreen
remix of d/21796 by u/erin

function u(t) {

}//
71/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • barbed wire pattern

Please log in (or register) to comment.

show FPS hide FPS share fullscreen

function u(t) {

}//
136/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • Infinite Sunset
  • Show more comments…
  • u/danny@hille.dk
    if you are willing to make some compromises, you can use your constant m to replace values close to 255
  • u/danny@hille.dk
    and use 2e3 instead of 1920
  • u/danny@hille.dk
    117 b => c.width=w=2e3;with(x)fillStyle=R(m=255,99,S(t)*m),fillRect(0,0,w,w),arc(w/2,S(t)*m+800,m,0,7),fillStyle=R(m,m),fill()
  • u/danny@hille.dk
    113 => w=c.width|=0;with(x)fillStyle=R(m=255,99,z=S(t)*m),fillRect(0,0,w,w),fillStyle=R(m,m),arc(w/2,z+800,m,0,7),fill()

Please log in (or register) to comment.

show FPS hide FPS share fullscreen

function u(t) {

}//
140/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • Bumpy Road 🚗

Please log in (or register) to comment.

Loading...
Next page