Eulerian smoke simulation built with WebGL and TypeScript.
Template: https://github.com/julesyoungberg/typescript-twgl-template
Demo: https://2d-smoke.vercel.app/
Background: https://developer.download.nvidia.com/books/HTML/gpugems/gpugems_ch38.html