[Bf-blender-cvs] [8c717816835] fluid-mantaflow: cleanup before master merge

Sebastián Barschkis noreply at git.blender.org
Sat Feb 24 00:25:37 CET 2018


Commit: 8c71781683508632fcc418d6281668bedab60e32
Author: Sebastián Barschkis
Date:   Fri Feb 23 23:26:52 2018 +0100
Branches: fluid-mantaflow
https://developer.blender.org/rB8c71781683508632fcc418d6281668bedab60e32

cleanup before master merge

===================================================================

M	intern/mantaflow/intern/strings/liquid_script.h
M	source/blender/blenkernel/intern/smoke.c

===================================================================

diff --git a/intern/mantaflow/intern/strings/liquid_script.h b/intern/mantaflow/intern/strings/liquid_script.h
index 9329b0ea8f6..894bc68ed55 100644
--- a/intern/mantaflow/intern/strings/liquid_script.h
+++ b/intern/mantaflow/intern/strings/liquid_script.h
@@ -118,6 +118,9 @@ def liquid_pre_step_low_$ID$():\n\
         z_invel_s$ID$.multConst(Real(gs_s$ID$.z))\n\
         copyRealToVec3(sourceX=x_invel_s$ID$, sourceY=y_invel_s$ID$, sourceZ=z_invel_s$ID$, target=invel_s$ID$)\n\
     \n\
+    x_vel_s$ID$.multConst(Real(gs_s$ID$.x))\n\
+    y_vel_s$ID$.multConst(Real(gs_s$ID$.y))\n\
+    z_vel_s$ID$.multConst(Real(gs_s$ID$.z))\n\
     copyRealToVec3(sourceX=x_vel_s$ID$, sourceY=y_vel_s$ID$, sourceZ=z_vel_s$ID$, target=vel_s$ID$)\n\
     copyRealToVec3(sourceX=x_force_s$ID$, sourceY=y_force_s$ID$, sourceZ=z_force_s$ID$, target=forces_s$ID$)\n";
 
@@ -131,7 +134,10 @@ def liquid_post_step_low_$ID$():\n\
     \n\
     phiIn_s$ID$.setConst(9999)\n\
     phiOut_s$ID$.setConst(9999)\n\
-    copyVec3ToReal(source=vel_s$ID$, targetX=x_vel_s$ID$, targetY=y_vel_s$ID$, targetZ=z_vel_s$ID$)\n";
+    copyVec3ToReal(source=vel_s$ID$, targetX=x_vel_s$ID$, targetY=y_vel_s$ID$, targetZ=z_vel_s$ID$)\n\
+    x_vel_s$ID$.multConst( 1.0/Real(gs_s$ID$.x) )\n\
+    y_vel_s$ID$.multConst( 1.0/Real(gs_s$ID$.y) )\n\
+    z_vel_s$ID$.multConst( 1.0/Real(gs_s$ID$.z) )\n";
 
 //////////////////////////////////////////////////////////////////////
 // STEP FUNCTIONS
@@ -265,7 +271,7 @@ def liquid_step_$ID$():\n\
     \n\
     mantaMsg('Calculating curvature')\n\
     getLaplacian(laplacian=curvature_s$ID$, grid=phi_s$ID$)\n\
-\n\
+    \n\
     if using_guiding_s$ID$:\n\
         mantaMsg('Guiding and pressure')\n\
         weightGuide_s$ID$.addConst(alpha_s$ID$)\n\
diff --git a/source/blender/blenkernel/intern/smoke.c b/source/blender/blenkernel/intern/smoke.c
index 4fec3d21ccf..0b25fa0123a 100644
--- a/source/blender/blenkernel/intern/smoke.c
+++ b/source/blender/blenkernel/intern/smoke.c
@@ -869,6 +869,7 @@ static void obstacles_from_derivedmesh_task_cb(void *userdata, const int z)
 					data->velocityX[index] += hit_vel[0];
 					data->velocityY[index] += hit_vel[1];
 					data->velocityZ[index] += hit_vel[2];
+					// printf("adding obvel: [%f, %f, %f], dx is: %f\n", hit_vel[0], hit_vel[1], hit_vel[2], sds->dx);
 
 					/* increase object count */
 					data->num_objects[index]++;
@@ -921,7 +922,6 @@ static void obstacles_from_derivedmesh(
 
 			if (scs->numverts != numverts || !scs->verts_old) {
 				if (scs->verts_old) MEM_freeN(scs->verts_old);
-
 				scs->verts_old = MEM_callocN(sizeof(float) * numverts * 3, "smoke_obs_verts_old");
 				scs->numverts = numverts;
 			}
@@ -949,8 +949,7 @@ static void obstacles_from_derivedmesh(
 
 			/* vert velocity */
 			VECADD(co, mvert[i].co, sds->shift);
-			if (has_velocity)
-			{
+			if (has_velocity) {
 				sub_v3_v3v3(&vert_vel[i * 3], co, &scs->verts_old[i * 3]);
 				mul_v3_fl(&vert_vel[i * 3], sds->dx / dt);
 			}
@@ -1965,15 +1964,18 @@ static void emit_from_derivedmesh(Object *flow_ob, SmokeDomainSettings *sds, Smo
 		 *   domain grid space for fast lookups */
 		for (i = 0; i < numOfVerts; i++) {
 			float n[3];
+
 			/* vert pos */
 			mul_m4_v3(flow_ob->obmat, mvert[i].co);
 			smoke_pos_to_cell(sds, mvert[i].co);
+
 			/* vert normal */
 			normal_short_to_float_v3(n, mvert[i].no);
 			mul_mat3_m4_v3(flow_ob->obmat, n);
 			mul_mat3_m4_v3(sds->imat, n);
 			normalize_v3(n);
 			normal_float_to_short_v3(mvert[i].no, n);
+
 			/* vert velocity */
 			if (sfs->flags & MOD_SMOKE_FLOW_INITVELOCITY) {
 				float co[3];



More information about the Bf-blender-cvs mailing list