Nicolas Scheer
home / projects / bourrasque
2026Fluid simulationactive

bourrasque_v2

GPU-accelerated fluid and material solver (water, elastic, sand) with a Blender extension for artist integration.

4 real solver simulations — captured from Cycles renders

Water — dam-break, 128³ grid
Elastic — drop and bounce
Sand — granular collapse (Drucker-Prager)
Static collider — splash on a ramp

Problem

Mantaflow, Blender's native solver, is CPU-only and slow to iterate on; commercial GPU solvers (Hurricane, FLIP Fluids) are closed and proprietary.

Approach

MLS-MPM (Material Point Method) solver with APIC transfers in pure CUDA: each material — corotational elastic, water, sand in progress (Drucker-Prager plasticity) — is just a stress function plugged into the same particle-to-grid pipeline. Every change to the algorithm is first prototyped and validated against a NumPy reference before being ported to CUDA. Blender extension for a live viewport, SDF colliders and mesh export.

Results

3×3 GPU SVD validated to within 1.9·10⁻⁴ of NumPy on 5402 matrices · sand model validated by angle of repose (25°/35°/45°) · 184/185 tests passing (the last one is an interop test that skips cleanly when its 600 MB binary fixture hasn't been regenerated locally) · dam-break on a 128³ grid simulated up to 2.9 M particles per frame, mesh reconstructed on the fly by the solver's native Zhu-Bridson mesher (up to 3.2 M triangles/frame), ~7.6 s/frame for the full simulation + reconstruction + Cycles render pipeline.

view code →

Other projects

all projects →