// undine docs
Roadmap
Undine is an evolving system.
This page organizes the future-facing notes from the documentation so roadmap information has its own stable home.
Recently landed
Undine evolves stage by stage. Below are the larger pieces that have already shipped in the current beta and shape what the solver can do today.
| Area | What landed | Effect |
|---|---|---|
| Pipeline | GPU-resident fast path for water, explicit logged fallback routes for production viscosity/rheology. | Eliminated ~2.3 ms per-substep D2H round-trip on water fast-path; 0.5 → up to 15 FPS on reference water scene. |
| Pressure | PCG with V-cycle multigrid preconditioning, sym. RBGS smoother selectable from the panel. | Robust convergence on harder scenes without abandoning FP32 speed. |
| Pressure | FP32 tolerance floor (√N · ε_f32 · safety), true-residual refresh, retry chain (FP64 → MG → CPU). | Long bakes don't silently diverge; breakdowns are handled, logged, recovered. |
| Bricks | Sparse active regions with halo, capability inventory, demotion-aware authority state. | Empty space costs nothing; large domains stay tractable. |
| Viscosity | Newtonian and non-Newtonian rheology (Bingham, Herschel-Bulkley) for production honey, chocolate, slime. | Production-grade viscous liquids with host-authoritative implicit routes where needed. |
| Vorticity | Fedkiw-style two-pass confinement (∇×v, normalize, restore). | Recovers small-scale curl lost to numerical diffusion. |
| Collisions | CUDA-accelerated SDF bake (LBVH, slab-based). | Animated colliders bakeable per-frame without TDR; armature/shapekey deformation captured correctly. |
| Streamflow | Live preview with Streamflow Points and Mesh Every Frame end-modes; runtime contract. | The preset shown in the panel is the preset that runs. No silent fallbacks. |
| Meshing | Anisotropic DENSITY_MC scalar route with covariance-matrix kernel and velocity fallback. | Surfaces stop looking like marbles and start looking like sheets and drips. |
| Output | Native Alembic export with per-vertex .velocities. | Renderer-side motion blur is physically aligned with the sim — no auxiliary AOVs. |
Future Development
Future direction follows the same staged philosophy: improve one stage at a time without disrupting the others. The list below is what's on the table; ordering depends on which scenes are surfacing the next limit.
| Area | Direction | Why it matters |
|---|---|---|
| MPM | Full elastoplastic Material Point Method: per-particle deformation gradient F, Neo-Hookean stress, snow/dough/cream material families. | Enables solid-fluid hybrids, viscoelastic materials, and non-liquid material families a pure FLIP solver cannot touch. |
| Materials | EVP (Elasto-Visco-Plastic) constitutive models, extended rheology yield surfaces. | Finer control over viscoplastic, viscoelastic, and granular behavior beyond Bingham/Herschel-Bulkley. |
| Solver | Additional pressure preconditioners, smarter MG level cap selection. | Faster convergence on adversarial geometry without manual tuning. |
| GPU | Wider sparse-bricks coverage (full-pages mode, currently frozen-internal). | Lower memory pressure on very large domains. |
| Meshing | Direct GPU isosurface extraction, persistent VDB grid reuse across frames. | Lower meshify cost, smoother frame-to-frame surfaces. |
| Emitters | Velocity-aware emission, scripted rate curves, animated trigger volumes. | Tighter control over how a shot's liquid actually starts. |
| Diagnostics | Live overlay of CFL, residual, divergence in the 3D viewport. | Read the numbers without leaving the sim. |
| Tooling | Headless solve from CLI, render-farm-friendly job format. | Take Undine off the workstation when scenes outgrow it. |
How the solver can evolve
The architecture of Undine is designed to allow the solver to evolve gradually without requiring disruptive rewrites.
Because the simulation pipeline is modular, individual solver stages can be upgraded as new approaches become available while preserving a stable foundation for existing workflows.
The runtime contract guarantees that a new internal path can land without changing the meaning of presets the user has already saved — the contract is the seam between artist-facing intent and solver-facing implementation.
Long-term Goal
The long-term goal is to develop a fluid simulation system that can compete with dedicated simulation tools while remaining tightly integrated with Blender.
'Compete' here means specific, measurable things: comparable visual quality on water, viscous, and elastoplastic shots; iteration speed that fits inside a single workday; numerical transparency that lets a technical artist or TD diagnose a scene without filing a support ticket.