banteg details a GPU smoke fluid solver: 3D-lit volumetrics from 2D textures

banteg · x · 2026-10-22

Developer banteg shared a complete technical writeup of an in-game smoke simulation. Instead of RTX fluid, each frame extracts two immutable event streams (smoke emission + airflow impulses) from native sprites into a GPU solver running advection-vorticity confinement and Helmholtz-Hodge projection (12 Jacobi iterations) on 320×320 textures at a stable 60Hz. Rendering ray-marches the 2D (ρ,T) texture as a 3D lit volume using premultiplied accumulation, column-wise 2.5D Gaussian plumes, and cached 6-column light depths to avoid Retina 4K fragment cost; impulses are discarded at zero GPU cost when no smoke is active.

Original post →

More from coding & agent

coding & agent channel →