Loosing Mantaflow caches - UX feedback

Hello there,

I’m a huge blender fan! The software is great and i love the user integration in the development process.
Thus said, i would like to contribute as well:

This issue refers not only to mantaflow and blender 2.83. It is an old topic and in my opinion very important.
Let me take you on a little blender journey…
There is this saying of an old blenderer: He used to bake some smoke simulations on his laptop. It took him quite some time. Hours passed, then days and at the end, one week of pure i3 power brought him his simulation. He was quite happy, certainly proud. But then, maybe because he’s a stupid, he clicked “free bake”. Bam! 200Gb of cache were gone.

I know, clicking “free bake” means you want to rebake. This seems legit. But couldn’t anyone implement a locking button? To lock the simulation and prevent data loss by one click. I want to highlight that: You can loose all your data with one single unintended click. This happend a lot to me. You can’t undo this. Maybe if you use a recovery program, you can. But you certainly don’t want to use a third party program because of one single click.
By the way: If you change the mantaflow cache type (replay/modular/final), you loose your cache too!

In my opinion we need a locking option for baked simulation. I also thought about a prompt when “free bake” is clicked but this might get annoying really fast. In case of the mantaflow cache type there should be a prompt. Something like: “Attention! Changing this value results in deleting the bake.”

I hope I clarified my issue with the caching workflow.
I look forward to hear your suggestions on this topic.

Regards,
~Lukas

1 Like

Hm… interesting.
I have a suggestion on how this could be implemented without changing too much in UI/UX:

What if cache is NOT deleted when pressing “Free Bake”, but only by doing one of the following AFTER “Free Bake” is pressed:

  • by rebaking with different settings
  • by pressing a “purge cache” button, which appears after pressing “Free Bake”
  • by closing Blender (just like regular unused datablocks)
    This would remedy the accidental, one-click catastrophe.

Pressing Play to preview a simulation should just create a new cache directory on the side which always gets purged when the simulation is baked, or Blender is closed.

And we’d need a “restore bake” button to return to the state before pressing “Free Bake”.

So basically: “Free Bake” becomes “Bake”/“Restore”/“Purge” (Restore and Purge could be just to small buttons to the right.

This should cover it, I believe. Please add, if I missed something.

Another thing to think about could certainly be a list of caches. - Sometimes you bake, and the result looks good. But you have an idea on how to improve the simulation even further, but it’s not clear if it will work. Now, you’d have to delete the original simulation, try the new thing, and if it fails you’d have to rebake with the original settings. A list of caches would allow us to do something like this without losing the original.
Sure, this could be done by copying folders around, but this post is about improving UX. :wink: