alt.hn

3/25/2026 at 7:08:38 PM

Ball Pit

https://codepen.io/mrdoob_/full/NPRwLZd

by memalign

3/25/2026 at 7:57:04 PM

For some context, I think this is by mr.doob of three.js fame.

by verytrivial

3/26/2026 at 5:50:44 PM

Originally of Flash-ActionScript frame.

He’s been an inspiration for me, his demos got me into coding.

by nojvek

3/25/2026 at 11:18:04 PM

What a time to be alive. It runs surprisingly smooth on Firefox/Linux and doesn't appear to put much strain on my 9070 XT.

by chrysoprace

3/26/2026 at 12:22:39 AM

Doesn't appear to put much strain on my Pixel 10!

Graphics and physics performance in 2026 across all kinds of hardware is wildly impressive.

by cbarrick

3/25/2026 at 7:29:56 PM

Beware: this might totally freeze your computer like it did for me.

by simlevesque

3/25/2026 at 11:34:19 PM

Runs fine on my iphone

by __turbobrew__

3/25/2026 at 8:38:39 PM

WebGPU moment (have same issue on Firefox/Linux).

by ivanjermakov

3/25/2026 at 7:39:35 PM

Works fine on my phone, Firefox+GrapheneOS.

by amelius

3/26/2026 at 12:26:26 AM

Works great on my M3 MacBook Air under Safari. GPU core temps got into the 130-160 degrees F. range. Fun demo!

by themadturk

3/25/2026 at 8:46:47 PM

Had to break out Chromium for this one - Firefox+Linux does not like webgpu (my whole DE started flickering).

by daemonologist

3/25/2026 at 9:02:28 PM

I was amazed that it run smoothly on Firefox mac without WebGPU.

by mentalgear

3/25/2026 at 11:35:42 PM

Yeah, it seems fine on my iPhone 13 running Safari 18. It's not warming up.

Some ball shadows look kind of grainy but moving my finger around moves the balls around.

by extra88

3/25/2026 at 7:39:13 PM

definitely needs a lot of computing power

by ninju

3/25/2026 at 10:45:15 PM

Runs smoothly and without crashes on my Pixel phone

by wildrhythms

3/25/2026 at 9:04:06 PM

> The babies look unhappy

> Add more balls

Fun simulation. The novelty of stuff like this still hasn't worn off for me in this era where we've got ray tracing in-browser.

by RankingMember

3/25/2026 at 7:39:57 PM

This runs pretty smoothly on my middling laptop CPU while looking like a typical raytracing demo. I assume there's some smoke and mirrors involved?

by p1necone

3/25/2026 at 7:55:01 PM

No, it's using the newish SSGI and TRAA webgpu nodes. The three team has been making great progress with SSGI and webgpu in general and i'd recommend checking it out if you're interested.

There's also a denoise node in three (not used in this example), but SSGI still looks kinda blurry.

Work though is still going on: https://github.com/mrdoob/three.js/issues/31892

by h4ch1

3/25/2026 at 8:29:30 PM

Jesus Christ, trying to figure out what TRAA is (presumably an anti-aliasing algorithm) and how it works and it's entirely impossible to google.

by Sharlin

3/25/2026 at 9:18:55 PM

TRAA basically works by using a history buffer, for example using the last couple of frames, all jittered a little bit to compute the pixel. There's still ghosting and smearing that can happen though because of this technique, so you have methods to counteract like subpixel correction where u increase temporal alpha when velocity is subpixel, but that can introduce some artifacts as well.

There's also SMAA T2x which the pmndrs team is planning on integrating into their postprocessing package[0]. This cryengine3 slideshow gives a nice overview of antialiasing methods if you're interested: http://iryoku.com/aacourse/downloads/13-Anti-Aliasing-Method...

[0] https://github.com/pmndrs/postprocessing

This paper also provides a decent overview of TRAA: https://fileadmin.cs.lth.se/cs/Education/EDAN35/projects/17C...

by h4ch1

3/25/2026 at 8:31:19 PM

Temporal reprojection anti aliasing :)

https://www.threejs-blocks.com/docs/traaHD

by menno-dot-ai

3/25/2026 at 8:35:42 PM

The only thing even remotely related to graphics I found was references to "TrAA" in forum posts from 2006 (yeah) where I believe they referred to NVIDIA "Transparency AA" or something like that. "TRAA", "TRAA meaning", "TRAA graphics", "TRAA 3D" all gave fully irrelevant results :D

by Sharlin

3/25/2026 at 9:24:15 PM

If you make the assumption that "AA" is some form of antialiasing, it's not too bad: first scholar[1] hit expands the acronym to Temporal Reprojection Anti-Aliasing

    [1]: https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=traa+anti+aliasing&btnG=

by jldugger

3/26/2026 at 1:07:23 PM

Yeah, should've tried with "antialiasing". Still, astonishingly obscure given that it's not even a new thing anymore and apparently implemented in UE4 and others.

by Sharlin

3/25/2026 at 11:33:11 PM

The free Google AI mode got it for me on the first try by just pasting in the comment and asking what TRAA was in that context.

by nilkn

3/26/2026 at 4:55:48 PM

Man. Runs like butter on an iPhone 15 (Non-Pro). Impressive!

by nerptastic

3/25/2026 at 8:27:21 PM

I'm a C++ programmer and only passingly familiar with web/JS stuff. What libraries/technologies is this using, apart from Javascript and three.js?

by hermitcrab

3/25/2026 at 10:37:57 PM

it's the three.js library using the webgpu browser api, you can open view and edit the source directly on the codepen page:)

by kurishutofu

3/25/2026 at 11:02:22 PM

Thanks.

by hermitcrab

3/25/2026 at 10:09:36 PM

I opened that on a Pixel 9a and was impressed on how well it worked. There's something neat about this.

by rbosinger

3/25/2026 at 7:54:17 PM

Beautiful, this must have been an excellent learning experience to make.

I've done some very basic rendering code in C from a rendering internals course, and at the same time I'm learning about perspective from the drawing/art side. I wonder how much learning one would help the other, in a practical way.

by Rendello

3/25/2026 at 8:25:37 PM

The author is a world renowned expert in 3D graphics.

by akie

3/26/2026 at 1:05:12 AM

I see, it looks like he's the one behind ThreeJS. Well, he had to make ThreeJS before he could make this, and that must have been a learning experience, right? :D

by Rendello

3/25/2026 at 8:37:33 PM

I was able to get all the balls stuck on the 'ceiling'. Bug or feature?

by CodeWriter23

3/25/2026 at 10:04:54 PM

I have fond memories of visiting a university in the early 90s on a demo day and there was a (physical) sphere in a Cornell box:

https://en.wikipedia.org/wiki/Cornell_box

And next to it was a super beefy computer doing a 3D rendering of a similar scene.

35 years+ later I've got "many spheres in a Cornell box" rendering in my browser, love it : )

by TacticalCoder

3/26/2026 at 12:24:18 AM

Runs great on MacBook Air M1! Super!

by appstorelottery

3/26/2026 at 5:51:25 AM

This does work good with Linux and Firefox on older PCs too.

by fuzzfactor

3/26/2026 at 8:15:50 AM

No offense, and please pardon my lack of knowledge, but what exactly is so special about this?

by chirau

3/26/2026 at 12:34:43 AM

It's cool but shockingly slow for an SSGI implementation, especially without any denoising.

by slopinthebag

3/26/2026 at 12:35:44 AM

Runs steadily around 30fps on my Pixel 7a.

by 1bpp

3/25/2026 at 7:26:44 PM

path tracer?

by newobj

3/25/2026 at 7:28:38 PM

nevermind i see the ssgi/traa code. looks great!

by newobj

3/25/2026 at 10:14:03 PM

that's amazing. it runs so smoothly on my M4 Pro

by artursapek

3/25/2026 at 7:45:59 PM

Is this marketing for the Shape Store? It's cool but I still don't know when my area is getting a Shape Store.

by jessepasley

3/25/2026 at 8:05:20 PM

I tried to be helpful and explain what the shape store was, but found myself with a lack of words. Instead here is the know your meme page: https://knowyourmeme.com/memes/the-shape-store-ai-video

tldr it is an ai video, subtle analog horror / backrooms style

by adzm