WebGL Fluid Simulation
Paint swirling fluid with your mouse or finger, then tune simulation physics in real time. No legacy GUI framework, no server round-trips, and no upload required.
Space for burst, P to pause.Pause Simulation
Freeze state but keep render visible.
Why Use This Fluid Simulation?
A GPU-powered interactive fluid dynamics playground that runs entirely in your browser
The Navier-Stokes solver runs entirely on your GPU via WebGL fragment shaders, delivering smooth 60 fps fluid dynamics without taxing the CPU.
Full mouse and multi-touch support. Paint fluid on your phone, tablet, or desktop — the simulation adapts to any screen size automatically.
Tune pressure, curl, dissipation, splat radius, and force in real time. Switch between low, medium, and high quality presets instantly.
No server, no uploads, no tracking. The entire simulation runs in your browser — you can even use it offline once the page loads.
Experiment with vivid color dynamics, swirling vortices, and parameter combinations to create generative art and satisfying visual effects.
Works on Chrome, Firefox, Safari, and Edge. Prefers WebGL 2 for best performance and automatically falls back to WebGL 1 on older hardware.
How the WebGL Fluid Simulation Works
This interactive fluid simulation solves a simplified version of the Navier-Stokes equations entirely on your GPU using WebGL shaders. When you drag across the canvas the engine injects dye and velocity at that position, then the solver steps through advection, pressure projection, and vorticity confinement every frame. The result is realistic, real-time fluid dynamics you can touch and shape.
The solver uses a Jacobi iterative method for the pressure step, running a configurable number of iterations per frame (the "Pressure Iterations" slider). Higher values produce more accurate incompressibility at the cost of extra GPU work. Vorticity confinement (the "Curl" slider) reintroduces small-scale rotational detail that numerical dissipation would otherwise remove, keeping the fluid lively and turbulent.
Two key dissipation parameters control how quickly the fluid loses energy. Velocity dissipation slows the motion over time, while density dissipation fades the color dye. Lowering both values creates long, lingering trails; raising them produces snappy bursts that vanish quickly. Combined with the splat radius and force sliders you can create anything from subtle ink drops to explosive paint storms.
The simulation prefers WebGL 2 for native half-float texture support but gracefully falls back to WebGL 1 with the OES_texture_half_float extension when needed. This means it works on virtually every modern browser — Chrome, Firefox, Safari, and Edge on both desktop and mobile. No plugins, no installs, and no data leaves your device.
Frequently Asked Questions
Related Tools
Explore more free browser-based tools for developers and data scientists
Meet the RunCell Jupyter AI Agent
Your on-demand copilot built for data scientists. Automate routine notebook tasks, explore data faster, and ship insights without leaving Jupyter.
- Generate and refactor notebook code with context awareness.
- Ask questions about your data, charts, and results inline.
- Collaborate securely—no datasets leave your environment.