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

Reply via email to