They did two much more impressive demos[1][2] with this technology, including drawing complex geometry using only point sprites, on DX9(no compute shaders).
It's remarkable that those five year old demos could easily do flows, shading and blending on milions of particles in real time, while this JS version starts dropping frames at 262K.
Subtle presentation a great effect, but this bit from the demo's nfo is kind of insane:
3d smoothed particle hydrodynamics with a fully-featured solver,
supporting surface tension, viscosity and collisions with arbitrary meshes.
rendering as metaballs converted to triangle meshes with marching cubes.
simulating around 250,000 - 1 million particles per frame and generating & rendering
several million vertices per frame during triangulation.
except we wanted to do it in realtime. on a consumer gpu. on vanilla directx 9.
no cuda/compute, no geometry shaders. (they'd probably be too slow anyway.)
with everything else youd expect from a modern demo going on around it and on top.
the best possible lighting, depth of field, post-process antialiasing.
twice. (for stereoscopic 3d.)
with style.
The page also shows that sometimes what you think is hard is easy and what you overlook is the really difficult bit:
> The problem with SPH in realtime is it’s really really hard. The simple explanation of the algorithm is: “take all the particles near my particle and perform some force exchange between them”.
At this point I was expecting a long discussion on all the clever tricks they have found to calculate the force exchange between thousands of particles in a snap. And instead...
> The force exchange is easy; the “all the particles near my particle” is a bitch. On GPU it’s even more of a bitch; and in 3D it becomes an order of magnitude more of a bitch.
> [...]
> The problem is simply the neighbourhood search. You end up with a variable amount of fast-moving particles affecting each particle, where it’s hard to pick an upper bound – so the spatial database is hard to construct. If you solve the neighbourhood search, you can solve SPH.
[1] Agenda Circling Forth http://www.youtube.com/watch?v=L5w7Gh7WBjw
[2] Ceasefire http://www.youtube.com/watch?v=Grqb1aIa_4s