SwissGL tutorial: Reaction-Diffusion donut
Starting with a quad
Creating the state buffer
Modifying the state
(click the canvas to reset)
Blur
Adding reaction term
More steps pre frame
Apply colormap
Tesselate and wrap the quad
Displace vertices
Rotate
Per-vertex colors ("varying")
Add background
Final code (28 loc)
Bonus