dwitter.net | cantelope (62878)

+ 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: #Food

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).

  • Projection Faster and Uncompressed
  • u/@noel
    I love this one and I follow the logic, until the z & w performing. I know it's a bitwise AND operation on z and w, but I don't actually grasp it.
  • u/@noel
    I mean on this one: x.fillRect(i, j, 1, (z & w) / w)
  • u/joeytwiddle
    Here (z & w) / w is the height of the rectangle. If that height is less than 1, then the canvas anti-aliasing renders a grey pixel, instead of a black one.
  • u/@noel
    Thanks u/joeytwiddle Now I think I get it. (z & w) ensures that the value of z remains within the range of the canvas width 'w', and the dividing by w normalizes the height value. Great trick!

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).

  • Even more golfed

Please log in (or register) to comment.

show FPS hide FPS share 1 remix 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).

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).

  • Traffic 🚕🚓🚗🚙🚒🚑🚌

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).

  • The Cristal Ball.

Please log in (or register) to comment.

show FPS hide FPS share 1 remix fullscreen

function u(t) {

}//
138/140


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

  • Diving deeper

Please log in (or register) to comment.


function u(t) {

}//
127/140


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

  • bump mapping remix
  • u/Joachim
    Really nice #lighting
  • u/@noel
    Beautiful. I need to dig into this, to understand how this actually works.
  • u/rodrigo.siqueira
    Wow! Replace X^Y with X|Y to generate Sierpinski triangles. Replace Math.min with Math.max for a more dramatic effect. Remove |0 for improved golfing (a minimal visible effect on top alignment). Replace "t*1.2" with "C(i+t)*6" for the "water effect".
  • u/jellyedwards
    Wow that's amazing!!

Please log in (or register) to comment.

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).

  • based on one of my older once...

Please log in (or register) to comment.

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).

Please log in (or register) to comment.


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).

  • Stereographic Projection
  • Show more comments…
  • u/KilledByAPixel
    fillStyle can be slow when called this often (60,000+ times per frame), you can make a faster/smaller version in grayscale by removing the fillStyle and doing this x.fillRect(i,j,1,(z&w)/w)
  • u/danny@hille.dk
    uncompressed using grayscale and some other golfing tricks ->c.width=w=255;for(m=4e4;m--;x.fillRect(i,j,((C(a=Math.atan2(y,k))*w/d+t*w^S(a)*w/d+t*w)&w)/w,1))i=m%w,j=m/w,d=Math.hypot(k=i/w-.5,y=j/w-.3)
  • u/danny@hille.dk
    Great first Dweet, by the way :-)
  • u/@noel
    u/danny@hille.dk Thank you. Your solution is really nice. I am playing right now with it.

Please log in (or register) to comment.

Loading...
Next page