Skip to content

Domain Cache Settings

Ryan Guy edited this page Dec 19, 2023 · 22 revisions

This page documents the domain settings for the FLIP Fluid Cache panel.

image

Parameters

Current Cache Directory

The baked simulation results are stored in an external directory called the cache. By default, if the Blend file is saved before running a simulation, the cache directory will be named according to your Blend file name and located in the same location as your Blend file. Similar to other caching systems in Blender, if you move your Blend file, you will also want to move the cache directory. Alternatively, you may also set a specific cache directory location or load another cache by using the file selector icon.

image

Cache Directory The directory that will be used for reading/writing simulation meshes and data. This directory should contain only files that are created by the simulator. Each .blend file should have its own separate cache directory. If multiple .blend files share the same cache directory, cache files will be overwritten if one .blend file resets or re-bakes the simulation.
WARNING: The cache directory should not be set to a location inside of a network storage or cloud storage folder (ex: Dropbox, Google Drive, OneDrive, iCloud Drive, Backblaze). You may experience 'Access Denied' errors or incorrect playback/rendering when the addon attempts to access cache files that the cloud storage application is also accessing or actively backing up.
Make Relative Convert the cache directory path to a path relative to the .blend file. The .blend file must be saved before this operation can be performed.
Make Absolute Convert the cache directory path to an absolute path.
Match Filename Set the cache directory name to correspond to the Blend filename. Note: this will not rename an existing cache directory.

Link Existing Exported Geometry

image

Linked Geometry Cache Directory Select an existing cache directory. If a directory is set, the addon will link exported geometry data from another cache directory. Use if you want to re-use exported geometry data from another cache. Useful if you have a lot of animated geometry data in your scene that you do not want to re-export. Useful for if you have multiple caches from the same scene for testing different simulation settings.
Make Relative Convert the linked cache directory path to a path relative to the .blend file. The .blend file must be saved before this operation can be performed.
Make Absolute Convert the linked cache directory path to an absolute path.
Clear Clear the linked geometry cache directory field. This operator will not delete any files.

TIP: Use this feature in combination with our Skip Re-Export option for FLIP Fluid objects to avoid re-exporting data.

Skip Re-Export

If enabled, the addon will skip re-exporting this mesh when starting or resuming a bake. If this mesh has not been exported or is missing files, the addon will automatically export the required files.

Notes: Animated mesh export can slow down the export stage if the mesh is complex and contains a lot of geometry. Skipping mesh export for animated meshes will speed up export and help your simulation start quicker. If your animated mesh geometry or motion has changed, you will need to disable this option so that the addon will re-export the mesh geometry.

Cache Operators

image

Free Delete cache files excluding logfiles and exported settings/meshes. Notes: The cache file size size value may not be accurate to the actual file size of the simulation cache on your system and is only an estimate. For an accurate cache size, view this information using the filesystem of your OS. Typically, the difference between this size value and the total value is not significant.
Clear log files Enable this option to also delete logfiles when freeing the cache directory.
Clear export files Enable this option to also delete exported simulation settings and exported meshes when freeing the cache directory.

Moving, renaming, and copying the cache

Moving, renaming, or copying your cache directory is simple! Use your operating system's filebrowser for these operations. Just remember to update your Cache Directory to the updated name or location in the panel settings. The addon will automatically load the new cache data into your scene quickly.

A note on moving or copying cache on Apple systems

If moving a cache directory from an Apple Filesystem formatted device (APFS) to a non-APFS formatted drive such as exFAT, you may encounter errors where the cache cannot be deleted or reset within the addon. This is due to hidden files with a ._ prefix that are created when moving files between a APFS device and non-APFS device. The addon is unable to access and delete these files. In this case, you may be required to manually delete the cache directory through the filesystem on the non-APFS formatted device.


Crash Protection Features

The FLIP Fluids addon will try to ensure that your simulation cache remains intact after a Blender crash, power outage, an unintended closing of Blender, or if you run out of disk space.

It is not required to save your .blend file to save your caching progress. Our simulation caching system runs independently of your .blend file and the progress is not tied to the data saved in your .blend file. The cache will be freshly loaded every time you open your .blend file. With this cache system design, your simulation progress will have a very low chance of being erased after a crash or other events that halt simulation progress.

There is still a very chance that your simulation cache can become corrupted during a crash, however, but these cases are rare. If Blender crashes while the addon is in the progress of saving important files to your cache directory, these files can become corrupted and unrecoverable. The addon will try it's best to create backups of the uncorrupted files.

In the case of a crash where your cache stops functioning correctly, check the cache_directory/savestates directory for files/folders with a .backup extension. Removing these extensions will restore the cache to an earlier uncorrupted state. However, in rare cases it may not be possible to fully restore a corrupted simulation cache.

Closing Blender while a simulation is running

In most cases it will be okay if you close Blender without stopping the simulation, but to be certain that your cache does not become corrupted we recommend taking these steps to be completely safe:

  • Press the Stop / Pause operator to signal the simulator to stop running. Depending on the size of the simulation, fully stopping the simulation may take some time, but it is not required to wait for the operator to completely finish.
  • Once the simulator is signaled to stop running, the operator will display a message when it is safe to close Blender. You may close Blender if you see this message without worrying that your cache will become corrupted.
  • If the operator displays a message that it is NOT safe to close Blender, please wait briefly for this message to go away. While this message is displayed, the addon will be in the process of saving important files to your system.

File and Data Protection Features

Since the start of the FLIP Fluids addon project, we have taken data protection and file integrity very seriously in our development. Blender addons have almost limitless access to the files on your system and as addon developers, we need to be very careful in how our FLIP Fluids addon interacts with your filesystem. Our addon requires managing files located in your cache directory as well as your Blender addons directory. This includes creating, renaming, moving, and deleting files, and we would never want you to lose your data due to an error or bug in our software.

As of FLIP Fluids version 1.0.9a, we have added an automatic filesystem protection feature into the addon to help detect bugs related to human and development error when accessing your filesystem, and to help prevent data loss. This filesystem protection layer acts as a double check in our file operations to enforce that we are only interacting with your files according to a set of rules:

  • All file removal operations must pass through this layer which detects bugs related to human/development error.
  • Enforces that files can only be deleted within the current cache directory, the FLIP Fluids addon scripts directory, or installed FLIP Fluids Preset Library paths.
  • Enforces that directories cannot be deleted recursively (ex: files within subdirectories of a directory cannot be deleted). This helps prevents data loss in the case that you accidentally set the cache directory to an already existing location (such as the root of your filesystem).
  • Enforces that files can only be deleted if they contain an extension contained in a whitelist of extensions used by the FLIP Fluids addon.
    • Extension whitelist: .backup, .bat, .bbox, .bin, .blend, .bobj, .cpp, .data, .ffd, .ffp3, .fpd, .h, .info, .md, .png, .preset, .sim, .sqlite3, .state, .txt, .wwi, .wwf, .wwp
    • Note: .blend files are allowed to be deleted according to the whitelist, however this extension is blacklisted from mass deletion (or wildcards) so that your Blend files are safe from deletion. Blend files are only allowed to be deleted singularly if the filename is explicitly stated. The need for deleting Blend files is a part of uninstalling and removing Blend files in the preset library.

With programming, we can never be 100% certain that our software is bug-free, but with this filesystem protection feature, we can be very certain that your filesystem and data will be safe when using our FLIP Fluids addon.

Clone this wiki locally