2.82 Fluids/Mantaflow artist experience

I hope I’m missing something here.

With pre-Mantaflow Blender fluids, one could quickly preview the behavior of smoke, fire, etc. before baking. Adjusting densities, textures, forces, etc. could happen interactively and quickly before baking.

Now, every adjustment requires a re-bake to see the results. Is there a way to return to the previous behavior? The current artist experience is very slow and laborious.

1 Like

If you set the cache type to ‘replay’ you will get an instant preview.

1 Like

Thank you.

I think the current default is “Modular”.

Seems to be a bug (maybe just in 2.83 which I’m using) where emitter changes don’t update the preview until you toggle the domain’s cache type to something else, then back to replay.

Same behavior in 2.82 release version.

Liquid simulation did not have instant caching.
A modular baking allows to bake FLIP particles separately from mesh which is faster, less memory consuming.
Mantaflow is doing liquid and both.
Choosing a modular cache for smokes too was a way to be consistent.
It is also less memory consuming to bake noise separately for smokes.

So, it was basis for mantaflow until its merge. At that moment, several users requested Replay cache.
So, it is a recent caching method and does not have desired stability, yet.

Modular method requires to bake. But you can pause bake at any moment to preview how it goes.
And if everything went well until frame of pause, you can press Resume button.
That is not very far from instant caching.
Changing a setting was also invalidating cache in 2.81.(Messing it up or erasing it)
In 2.81, you don’t press bake button and pause.
But you have to go back to first frame and play animation to obtain a valid cache.

Also, 2.82 has higher standards. Resolution of domain is higher. CFL number and Adaptive Timesteps are useful to stabilize liquid simulations but are slowing down baking.
You can increase CFL number to its maximum and disable Adaptive Timesteps to speed up baking of smokes.

1 Like

Thank you @zeauro. The history helps explain the current state of development.

My expectation/hope is that the Replay cache mode can be enhanced such that I can loop the simulation over, for instance, 50 frames and on replay it captures any new settings across all participating objects (domain, inflow geo, collisions, etc). My memory of pre-Mantaflow Blender 2.79 was that one could work this way.

I’m new to Mantaflow (but, have used a number of other similar tools). Currently, it seems that the ability to iterate and get to the settings you need is very cumbersome. I’m trying to create a basic steam element that should be easy. All the demos I see are where the user already knows the settings they want and they just plug them in and hit bake. I’m struggling with hunting for settings that work, and having to recache constantly to see every little change. Much slower workflow than before.

I think I’ve found the sweet spot for the workflow. There is a bug, where you need to be on your first frame and make changes there before replaying. If you are in the middle of your timeline, you’re simulation will start, and then restart on that frame. Weird, hard to explain. I’m gonna go check the bug list to see if it’s been reported yet.

That is not hard to explain. A frame is calculated from state of simulation at previous frame.
There is no way, software can guess correct aspect of smoke at frame 21 without computing previous 20 frames, first.
So, simulation starts with bad info if you are at frame 21.
That bad caching have to be erased when you back to first frame.
But it is not ; because if you erase the cache, you continue to have to compute frames and playback cannot go faster, at expected frame rate.
That is why instant caching is not reliable.

1 Like

Unreliable. A good synopsis of how it’s working.

1 Like