Morten Vassvik
banner
vassvik.bsky.social
Morten Vassvik
@vassvik.bsky.social
Simulation and rendering nerd. Co-founder and CTO @JangaFX

Working on EmberGen and more.

Discord: vassvik @[email protected]
That one time when something is actually unique to 3D, though:D
November 19, 2025 at 8:00 PM
Should be good, yeah :D
November 19, 2025 at 6:51 AM
🧐 wasn't aware it was changed to completed, but I'm afraid that still a bit early even if it's getting closer and closer. Will investigate
November 19, 2025 at 6:45 AM
This new one is actually heavier than the heavy one I had, and it feels like it's put to good use. I'll do some more tests and post about it later
November 7, 2025 at 4:07 PM
What's the GPU in it?
November 7, 2025 at 3:56 PM
Sadly after my previous high end Asus laptop I'd be hesitent to go for them again right away 🫠
November 7, 2025 at 3:48 PM
That looks nice, too. You have one?
November 7, 2025 at 3:47 PM
So lovely!
November 5, 2025 at 8:57 AM
from a WIP thing
November 3, 2025 at 7:04 PM
Have you tried simply brute forcing a lot of line segments?

At some point it's distinguishible from any actual curves, and with some simple culling/binning you can restrict the actual evaluation count significantly.

And if you place the points carefully you can control the tolerance as well
November 3, 2025 at 7:00 PM
Me every day, but for physics-adjacent topics in computer graphics by and for computer scientists
October 27, 2025 at 5:40 PM
🤔
October 20, 2025 at 10:34 PM
Tested various version in my shader, interesting how it becomes fully pathological when simply adding a `const`: gist.github.com/vassvik/621c...
October 20, 2025 at 12:31 PM
For the binary classification dot(n0, n1) < cos(t0 + t1) = cos(t0)cos(t1) - sqrt((1 - cos^2(t0))(1-cos^2(t1))) = cos(t0)cos(t1) - sqrt(1 - cos^2(t0) - cos^2(t1) + cos^2(t0)cos^2(t1)) should do, no?
October 19, 2025 at 8:54 PM
What happened to the image? 😅
October 19, 2025 at 8:24 PM
TFW it works, and the gains are massive

Colorado by number of splines that pass the culling.

Colors are (R, G, B, Y, M, C, W) = (1, 2, 3, 4 ,5, 6, >=7), respectively.

First image uses the outer circle, second image uses the purple region.
October 19, 2025 at 8:22 PM
I measured in the middle of a chonky thing that does *a lot more*. The runtime of the entire thing changed from 2400 microseconds to 500.
October 19, 2025 at 8:16 PM
Lots of registers indeed
October 19, 2025 at 8:14 PM
Never actually tested the switch version, but the difference between the array version and any of the computed ones was night and day
October 19, 2025 at 8:11 PM