// 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.

AreaWhat landedEffect
PipelineGPU-resident water fast path: particle data stays on device between frames for supported resident routes.Water fast-path measures on the order of 2× the FPS of the equivalent CPU path on the same scene and hardware; advanced dense-material routes remain gated separately.
PressurePCG with V-cycle multigrid preconditioning, sym. RBGS smoother selectable from the panel.Robust convergence on harder scenes without abandoning FP32 speed.
PressureFP32 tolerance floor (√N · ε_f32 · safety), true-residual refresh, retry chain (FP64 → MG → CPU).Long bakes don't silently diverge; breakdowns are handled, logged, recovered.
BricksSparse active regions with halo, capability inventory, demotion-aware authority state.Empty space costs nothing; large domains stay tractable.
Advanced viscositypro_strain_rate exact-viscosity backend and THICK_EXACT opt-in preset defined as a dense-material numerical route.Dense materials get a stronger viscous foundation without pretending that memory, plasticity, or GPU-resident paste behavior is already solved.
RheologyNewtonian / Bingham / Herschel-Bulkley models with yield-stress, shear-thinning, apparent-viscosity clamps, Picard outer solve, and temporal anti-flicker blend.Real yield-stress hold-shape and shear-thinning on top of the solver, controllable and stable; Newtonian stays the default.
Collider slip captureState-based tangential response (impact vs settled) with no-slip capture and per-state tangent/stick scaling.Materials can slide on the way down and grip once they rest, without gluing the fluid or killing splash.
VorticityFedkiw-style two-pass confinement (∇×v, normalize, restore).Recovers small-scale curl lost to numerical diffusion.
CollisionsCUDA-accelerated SDF bake (LBVH, slab-based).Animated colliders bakeable per-frame without TDR; armature/shapekey deformation captured correctly.
StreamflowLive 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.
Whitewater FXBeta one-way secondary particles for spray, foam, and bubbles with realtime preview budgets and a separate Production Bake path.Adds controllable renderable detail without participating in the primary solve.
MeshingAnisotropic DENSITY_MC scalar route with covariance-matrix kernel and velocity fallback.Surfaces stop looking like marbles and start looking like sheets and drips.
OutputNative Alembic export with per-vertex .velocities.Renderer-side motion blur is physically aligned with the sim — no auxiliary AOVs.

Advanced viscosity and dense materials

This is the advanced branch for high-viscosity materials: thick honey, chocolate, toothpaste, frosting, creams, and paste-like masses with stronger retention of ridges, ribbons, strands, and folds. The solver foundation and rheology are production-stable; viscoelastic memory and paste forces are the experimental, CPU-first frontier.

The honest description is CPU-first where it matters, physically richer than scalar viscosity, prepared for future GPU work, and protected by explicit diagnostics. It should not be marketed as a full MPM solver, fully GPU-resident paste solver, final EVP/plasticity system, or guaranteed realistic chocolate/frosting production model.

LayerRoleRelease posture
PRO Exact / THICK_EXACTpro_strain_rate selected through numerics.viscosity_mode = "pro_strain_rate"; THICK_EXACT enables the exact viscous base for dense materials.Stable, opt-in numerical preset. Host CPU only; not viscoelastic memory by itself.
RheologyNewtonian / Bingham / Herschel-Bulkley with yield-stress, shear-thinning, apparent-viscosity clamps, and temporal anti-flicker blend.Stable production layer; Newtonian remains the default.
Viscoelastic memory (VISC-PRO)CPU-first Maxwell/Oldroyd-B state in a six-component SoA ViscoelasticState (stores tauK so div(tauK) maps directly to acceleration), with a regularized yield↔elastic hold-shape coupling.Experimental, CPU-only, OFF by default. Under FULL Resident strict it blocks unless the user opts into the CPU bridge; upper-convected is not wired yet.
Paste forcesCohesion, SDF adhesion, and simplified wetting/contact-angle behavior for controlled free-surface and wall bands.CPU reference first, hard delta-v clamps, route must block or degrade before pressure if no GPU equivalent exists.
GPU/resident honestyAdvanced viscosity and paste forces do not silently join the resident pipeline.Unsupported in base release or experimental behind a flag until parity, stability, and fallback diagnostics are proven. No GPU/resident PRO Exact and no stable multigrid for PRO Exact.

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.

AreaDirectionWhy it matters
SolverAdditional pressure preconditioners, smarter MG level cap selection.Faster convergence on adversarial geometry without manual tuning.
GPUWider sparse-bricks coverage (full-pages mode, currently frozen-internal).Lower memory pressure on very large domains.
MeshingDirect GPU isosurface extraction, persistent VDB grid reuse across frames.Lower meshify cost, smoother frame-to-frame surfaces.
EmittersVelocity-aware emission, scripted rate curves, animated trigger volumes.Tighter control over how a shot's liquid actually starts.
MaterialsValidated GPU parity for ProStrainRate and paste forces; optional EVP/plasticity only after the reference path is stable.Finer dense-material control without overstating what the release base supports.
DiagnosticsLive overlay of CFL, residual, divergence in the 3D viewport.Read the numbers without leaving the sim.
ToolingHeadless 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 and dense high-viscosity shots; iteration speed that fits inside a single workday on supported routes; numerical transparency that lets a technical artist or TD diagnose a scene without filing a support ticket.