Hacker Newsnew | past | comments | ask | show | jobs | submit | superMayo's commentslogin

So sorry I've disappointed you, but don't fuck your life plz


It's too late. I already fucked it.



I hope your character is not Koopa


Thank's for the info, will fix asap !


Thanks a lot! That was my goal. It's a trick I learned: if you zoom in from a distance, everything appears flat. The effect is achieved by zooming out while simultaneously moving the camera closer to the subject!


In cinematography that is called a dolly zoom [1] and it is best known for being used in Vertigo [2] and Jaws [3].

[1] https://en.wikipedia.org/wiki/Dolly_zoom

[2] https://www.youtube.com/watch?v=G7YJkBcRWB8

[3] https://www.youtube.com/watch?v=_eO_5q5dR9M


I love how that transition is relative to the scroll position rather than working off a breakpoint. Did you consider doing the same thing with the first bar chart? I think it would be nice to slowly reveal the standings :)


Could you not just use a parallel projection (which should be the default for this kind of 3d scatter plot)?


Yes, I could have been using THREE.OrthographicCamera(), however, it makes the effect way less cinematic, and most importantly, it makes the depth harder to see (particularly for a scatter plot).


Author here. I'm using Svelte, which is great for interactive applications. For the event handling I'm very influenced by what https://mlu-explain.github.io/ does. The 3d plot is made with Threejs through the Threlte wrapper. One challenge was animating the 20k points in the 3d plot, which is handled by a custom vertex shader.


Thanks for sharing the tech stack. It's a really impressive site.


That's strange, what browser are you using?


Chrome / Fedora 38 64 bit / Wayland / Radeon Vega 3 graphics.


> Wayland

Likely culprit?


Unlikely. This is what gets installed and activated by default on Fedora.


That's really nice to hear and it gives motivation to continue! Next article will probably go 3D, but it adds a lot of difficulties. I still need to find out a good small-scale but playful shader project to cover!


Inigo Quilez is a wizard, the shader community owes so much to him!


Indeed it's a simplification! You can use buffers to keep information from previous states or share state between pixels (for both fragment and compute shaders). Though it can greatly reduce the performance sometimes. For an intro however, I think it's simpler to assume no memory nor shared state.


Ah yes, its good to simplify in the beginning! Cool article in any case!


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: