[Bf-blender-cvs] [a048354e9f9] blender-v2.82-release: Fluid: Fixed file formats for script exporter
Sebastián Barschkis
noreply at git.blender.org
Sun Feb 9 17:28:27 CET 2020
Commit: a048354e9f9bee20d23c7647c92790dc11f818d7
Author: Sebastián Barschkis
Date: Sun Feb 9 17:17:24 2020 +0100
Branches: blender-v2.82-release
https://developer.blender.org/rBa048354e9f9bee20d23c7647c92790dc11f818d7
Fluid: Fixed file formats for script exporter
File formats in the exported scripts were using hardcoded file extensions and not the ones specified in the UI.
===================================================================
M intern/mantaflow/intern/MANTA_main.cpp
M intern/mantaflow/intern/strings/fluid_script.h
===================================================================
diff --git a/intern/mantaflow/intern/MANTA_main.cpp b/intern/mantaflow/intern/MANTA_main.cpp
index f13dc4e5f52..91853ca566b 100644
--- a/intern/mantaflow/intern/MANTA_main.cpp
+++ b/intern/mantaflow/intern/MANTA_main.cpp
@@ -572,6 +572,29 @@ void MANTA::terminateMantaflow()
mantaInitialized = false;
}
+static std::string getCacheFileEnding(char cache_format)
+{
+ if (MANTA::with_debug)
+ std::cout << "MANTA::getCacheFileEnding()" << std::endl;
+
+ switch (cache_format) {
+ case FLUID_DOMAIN_FILE_UNI:
+ return ".uni";
+ case FLUID_DOMAIN_FILE_OPENVDB:
+ return ".vdb";
+ case FLUID_DOMAIN_FILE_RAW:
+ return ".raw";
+ case FLUID_DOMAIN_FILE_BIN_OBJECT:
+ return ".bobj.gz";
+ case FLUID_DOMAIN_FILE_OBJECT:
+ return ".obj";
+ default:
+ if (MANTA::with_debug)
+ std::cout << "Error: Could not find file extension" << std::endl;
+ return ".uni";
+ }
+}
+
std::string MANTA::getRealValue(const std::string &varName, FluidModifierData *mmd)
{
std::ostringstream ss;
@@ -815,6 +838,14 @@ std::string MANTA::getRealValue(const std::string &varName, FluidModifierData *m
ss << mmd->time;
else if (varName == "END_FRAME")
ss << mmd->domain->cache_frame_end;
+ else if (varName == "CACHE_DATA_FORMAT")
+ ss << getCacheFileEnding(mmd->domain->cache_data_format);
+ else if (varName == "CACHE_MESH_FORMAT")
+ ss << getCacheFileEnding(mmd->domain->cache_mesh_format);
+ else if (varName == "CACHE_NOISE_FORMAT")
+ ss << getCacheFileEnding(mmd->domain->cache_noise_format);
+ else if (varName == "CACHE_PARTICLE_FORMAT")
+ ss << getCacheFileEnding(mmd->domain->cache_particle_format);
else if (varName == "SIMULATION_METHOD") {
if (mmd->domain->simulation_method & FLUID_DOMAIN_METHOD_FLIP) {
ss << "'FLIP'";
@@ -987,29 +1018,6 @@ std::string MANTA::parseScript(const std::string &setup_string, FluidModifierDat
return res.str();
}
-static std::string getCacheFileEnding(char cache_format)
-{
- if (MANTA::with_debug)
- std::cout << "MANTA::getCacheFileEnding()" << std::endl;
-
- switch (cache_format) {
- case FLUID_DOMAIN_FILE_UNI:
- return ".uni";
- case FLUID_DOMAIN_FILE_OPENVDB:
- return ".vdb";
- case FLUID_DOMAIN_FILE_RAW:
- return ".raw";
- case FLUID_DOMAIN_FILE_BIN_OBJECT:
- return ".bobj.gz";
- case FLUID_DOMAIN_FILE_OBJECT:
- return ".obj";
- default:
- if (MANTA::with_debug)
- std::cout << "Error: Could not find file extension" << std::endl;
- return ".uni";
- }
-}
-
int MANTA::updateFlipStructures(FluidModifierData *mmd, int framenr)
{
if (MANTA::with_debug)
diff --git a/intern/mantaflow/intern/strings/fluid_script.h b/intern/mantaflow/intern/strings/fluid_script.h
index babcdd7551e..477cf3ff789 100644
--- a/intern/mantaflow/intern/strings/fluid_script.h
+++ b/intern/mantaflow/intern/strings/fluid_script.h
@@ -689,12 +689,12 @@ if (GUI):\n\
gui.show()\n\
gui.pause()\n\
\n\
-cache_dir = '$CACHE_DIR$'\n\
-cache_resumable = $CACHE_RESUMABLE$\n\
-file_format_data = '.uni'\n\
-file_format_noise = '.uni'\n\
-file_format_particles = '.uni'\n\
-file_format_mesh = '.bobj.gz'\n\
+cache_resumable = $CACHE_RESUMABLE$\n\
+cache_dir = '$CACHE_DIR$'\n\
+file_format_data = '$CACHE_DATA_FORMAT$'\n\
+file_format_noise = '$CACHE_NOISE_FORMAT$'\n\
+file_format_particles = '$CACHE_PARTICLE_FORMAT$'\n\
+file_format_mesh = '$CACHE_MESH_FORMAT$'\n\
\n\
# Start and stop for simulation\n\
current_frame = $CURRENT_FRAME$\n\
More information about the Bf-blender-cvs
mailing list