Interactive Browser Tool

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.

Navier-Stokes style solverMouse + touch support100% client-side WebGL
Simulation Canvas
Drag on the canvas to inject dye and velocity. Shortcut keys: Space for burst, P to pause.
Controls
Tune fluid behavior and rendering quality in real time.

Pause Simulation

Freeze state but keep render visible.

Browse more tools

Why Use This Fluid Simulation?

A GPU-powered interactive fluid dynamics playground that runs entirely in your browser

GPU-Accelerated Physics

The Navier-Stokes solver runs entirely on your GPU via WebGL fragment shaders, delivering smooth 60 fps fluid dynamics without taxing the CPU.

Desktop & Mobile

Full mouse and multi-touch support. Paint fluid on your phone, tablet, or desktop — the simulation adapts to any screen size automatically.

Adjustable Parameters

Tune pressure, curl, dissipation, splat radius, and force in real time. Switch between low, medium, and high quality presets instantly.

100% Client-Side

No server, no uploads, no tracking. The entire simulation runs in your browser — you can even use it offline once the page loads.

Creative Coding Ready

Experiment with vivid color dynamics, swirling vortices, and parameter combinations to create generative art and satisfying visual effects.

Universal Browser Support

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

Token Counter
Count tokens for GPT-5, Claude, Gemini & 20+ AI models
Jupyter to Python
Convert Jupyter notebooks to clean Python scripts
Pseudocode Generator
Generate LaTeX-formatted pseudocode from descriptions
Introducing

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.