Fast Sand?
I've never written WebGL before but I'm experimenting with simulating an MFM-style engine with GPU.
It uses WebGL2 so if you use Safari, you'll need to enable WebGL 2.0
in the Experimental Features
menu.
It's currently very intensive on the GPU so probably won't work on mobile devices.
There are some settings you can access by putting parameters after the URL (eg: gpu.sandpond.cool?w=1000&f=2).
Width
w
sets the width (and height) of the world (default: 300).
Firing Cycles
f
lets you choose how many event cycles get done per frame (default: 12).
Event Windows
e
lets you visualise where event windows are taking place (default: 0).
0 = event windows are not visible
1 = event windows are visible (and the engine runs slower so you can see what's going on)
Spawn
s
sets the default contents of the world (default: 0).
0 = empty
1 = sand atoms in random places
2 = one sand atom in the middle
3 = fill the world up with sand