Commit: 836db6c990469158f15192279fb7f0a1c034201a
Author: Sebastián Barschkis
Date: Tue Jun 7 00:45:26 2016 +0200
Branches: fluid-mantaflow
https://developer.blender.org/rB836db6c990469158f15192279fb7f0a1c034201a
fixed domain switching - now using flags correctly
===================================================================
M intern/mantaflow/intern/SMOKE.cpp
M source/blender/blenkernel/intern/smoke.c
===================================================================
diff --git a/intern/mantaflow/intern/SMOKE.cpp
b/intern/mantaflow/intern/SMOKE.cpp
index 185d47f..5ac180a 100644
--- a/intern/mantaflow/intern/SMOKE.cpp
+++ b/intern/mantaflow/intern/SMOKE.cpp
@@ -56,8 +56,8 @@ SMOKE::SMOKE(int *res, SmokeModifierData *smd)
mUsingFire = smd->domain->active_fields & SM_ACTIVE_FIRE;
mUsingColors = smd->domain->active_fields & SM_ACTIVE_COLORS;
mUsingHighRes = smd->domain->flags & MOD_SMOKE_HIGHRES;
- mUsingLiquid = true; // TODO Hardcoded for liquid testing (no gui yet)
- mUsingSmoke = false;
+ mUsingLiquid = smd->domain->type == MOD_SMOKE_DOMAIN_TYPE_LIQUID;
+ mUsingSmoke = smd->domain->type == MOD_SMOKE_DOMAIN_TYPE_GAS;
// Make sure that string vector does not contain any previous commands
mCommands.clear();
diff --git a/source/blender/blenkernel/intern/smoke.c
b/source/blender/blenkernel/intern/smoke.c
index 93d83ac..63e3587 100644
--- a/source/blender/blenkernel/intern/smoke.c
+++ b/source/blender/blenkernel/intern/smoke.c
@@ -2357,7 +2357,7 @@ static void update_flowsfluids(Scene *scene, Object *ob,
SmokeDomainSettings *sd
if (em->total_cells && sfs->type !=
MOD_SMOKE_FLOW_TYPE_OUTFLOW) {
/* activate liquid field. cannot be combined
with anything else */
if (sfs->type == MOD_SMOKE_FLOW_TYPE_LIQUID) {
- active_fields |= SM_ACTIVE_LIQUID;
+ active_fields &= SM_ACTIVE_LIQUID;
}
/* activate heat field if flow produces any
heat */
if (sfs->temp && sfs->type !=
MOD_SMOKE_FLOW_TYPE_LIQUID) {
@@ -2427,6 +2427,9 @@ static void update_flowsfluids(Scene *scene, Object *ob,
SmokeDomainSettings *sd
/* initialize all smoke with "active_color" */
smoke_ensure_colors(sds->fluid, sds->smd);
}
+ if (active_fields & SM_ACTIVE_LIQUID) {
+ liquid_ensure_init(sds->fluid, sds->smd);
+ }
#endif
sds->active_fields = active_fields;
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs