Fluid: Use OpenVDB as the default cache format for liquids too

With the updated OpenVDB setup, it is now perfectly fine to use OpenVDB for liquid domains.
This commit is contained in:
Sebastián Barschkis 2020-06-24 18:38:56 +02:00
parent ac0852cea0
commit c2ab069dfc
2 changed files with 7 additions and 11 deletions

View File

@ -399,6 +399,9 @@ class QuickSmoke(ObjectModeOperator, Operator):
if self.style == 'FIRE' or self.style == 'BOTH':
obj.modifiers[-1].domain_settings.use_noise = True
# ensure correct cache file format for smoke
obj.modifiers[-1].domain_settings.cache_data_format = 'OPENVDB'
# Setup material
# Cycles and Eevee
@ -511,7 +514,8 @@ class QuickLiquid(Operator):
obj.modifiers[-1].domain_settings.use_collision_border_top = True
obj.modifiers[-1].domain_settings.use_collision_border_bottom = True
# set correct cache file format for liquid
# ensure correct cache file formats for liquid
obj.modifiers[-1].domain_settings.cache_data_format = 'OPENVDB'
obj.modifiers[-1].domain_settings.cache_mesh_format = 'BOBJECT'
# change domain type, will also allocate and show particle system for FLIP

View File

@ -4583,13 +4583,9 @@ void BKE_fluid_particles_set(FluidDomainSettings *settings, int value, bool clea
void BKE_fluid_domain_type_set(Object *object, FluidDomainSettings *settings, int type)
{
/* Set common values for liquid/smoke domain: cache type,
* border collision and viewport draw-type. */
/* Set values for border collision:
* Liquids should have a closed domain, smoke domains should be open. */
if (type == FLUID_DOMAIN_TYPE_GAS) {
BKE_fluid_cachetype_mesh_set(settings, FLUID_DOMAIN_FILE_BIN_OBJECT);
BKE_fluid_cachetype_data_set(settings, FLUID_DOMAIN_FILE_UNI);
BKE_fluid_cachetype_particle_set(settings, FLUID_DOMAIN_FILE_UNI);
BKE_fluid_cachetype_noise_set(settings, FLUID_DOMAIN_FILE_UNI);
BKE_fluid_collisionextents_set(settings, FLUID_DOMAIN_BORDER_FRONT, 1);
BKE_fluid_collisionextents_set(settings, FLUID_DOMAIN_BORDER_BACK, 1);
BKE_fluid_collisionextents_set(settings, FLUID_DOMAIN_BORDER_RIGHT, 1);
@ -4599,10 +4595,6 @@ void BKE_fluid_domain_type_set(Object *object, FluidDomainSettings *settings, in
object->dt = OB_WIRE;
}
else if (type == FLUID_DOMAIN_TYPE_LIQUID) {
BKE_fluid_cachetype_mesh_set(settings, FLUID_DOMAIN_FILE_BIN_OBJECT);
BKE_fluid_cachetype_data_set(settings, FLUID_DOMAIN_FILE_UNI);
BKE_fluid_cachetype_particle_set(settings, FLUID_DOMAIN_FILE_UNI);
BKE_fluid_cachetype_noise_set(settings, FLUID_DOMAIN_FILE_UNI);
BKE_fluid_collisionextents_set(settings, FLUID_DOMAIN_BORDER_FRONT, 0);
BKE_fluid_collisionextents_set(settings, FLUID_DOMAIN_BORDER_BACK, 0);
BKE_fluid_collisionextents_set(settings, FLUID_DOMAIN_BORDER_RIGHT, 0);