Page MenuHome

Mantaflow: Liquid simulation appears to be unaffected by scale or "Real World Size" parameters.
Confirmed, NormalPublic


System Information
Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: GeForce GTX 1060 3GB/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 431.86

Blender Version
Broken: version: 2.82 (sub 6), branch: master, commit date: 2020-01-27 18:52, hash: rB507a331f0182

Short description of error
The scale of Mantaflow liquid simulations is not consistent with the real world scale of other Blender systems, and there doesn't seem to be any way to change it.

Exact steps for others to reproduce the error

Attached file contains a liquid simulation with an inflow, and a rigid body cube for reference.

The liquid domain is 64m, and the "real world size" parameter is also set to 64m.

The rigid body cube and the liquid are both falling under scene gravity, and should hit the ground at the same time.

The rigid body cube takes nearly 3 seconds (frame 64) to hit the ground plane under scene gravity, the liquid takes less than half a second (frame 10).

Scale the domain object in the scene scene and re-bake, notice no change in simulation.

Change the Real World Size parameter and re-bake, notice no change in simulation.

The simulation is affected by changes in scene gravity, but the scale is not consistent.

Event Timeline

Richard Antalik (ISS) changed the task status from Needs Triage to Confirmed.Wed, Jan 29, 6:50 PM
Peter (pgt2) added a subscriber: Peter (pgt2).EditedWed, Feb 5, 11:54 AM

Me another user did some additional testing and likes to add some notes :

In general i think there has to be done some calculation, ea a fluid should take into account the framerate, for particles.
The particle should be leading for their gravitational / fluid effects, the domain size should have no effect on the final speed (seams a bug currently).
If i took the the blend file as in this bug report, then set it to Water, set blenders frame rate to 25, and set the liquid time scale to 0.200 , and set the domain height to half (around starting point)
Then the cube and the fluid move at the same speed.

However when i resize in edit mode the domain to full size, bake it again, then the fluid moves twice as fast ( this should not depend on domain size).

Another side effect of this is though that the cach also had to be 5 times larger, and the progress bar (frame counter) moved to 1000 for 200 frames..
Also that's it are extra calculation steps and in genereal simulation show progress per real frame. (small bug).

It would be nice to have a time scale default to 1 and a world size of 1 meter (a blender cube = 2x2), only if that gets changed adjust for it, but recalculate a user shouldnt recalculate all those numbers, this scaling things can be moved behind code.

The time i think should be default 1, and only for slow mo, or for faster time be changed. (and maybe have an option to do x subframe calculations for complex situations, those shouldnt add more particles rather provide more calculation samples in between.

PS another bug fix would be to set origin to world center before baking, and set it bak to volume center origin after bake