Commit: 8c39247db15e3b3dfb336eff2e147161604ba20b
Author: Sebastián Barschkis
Date:   Wed Nov 9 22:09:47 2016 +0200
Branches: fluid-mantaflow
https://developer.blender.org/rB8c39247db15e3b3dfb336eff2e147161604ba20b

added obstacle access functions and cleaned up a bit

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

M       intern/mantaflow/extern/manta_fluid_API.h
M       intern/mantaflow/intern/manta_fluid_API.cpp
M       source/blender/blenkernel/intern/smoke.c

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

diff --git a/intern/mantaflow/extern/manta_fluid_API.h 
b/intern/mantaflow/extern/manta_fluid_API.h
index 42064b7..6a3fb1b 100644
--- a/intern/mantaflow/extern/manta_fluid_API.h
+++ b/intern/mantaflow/extern/manta_fluid_API.h
@@ -53,6 +53,9 @@ float *smoke_get_heat(struct FLUID *smoke);
 float *smoke_get_velocity_x(struct FLUID *smoke);
 float *smoke_get_velocity_y(struct FLUID *smoke);
 float *smoke_get_velocity_z(struct FLUID *smoke);
+float *smoke_get_ob_velocity_x(struct FLUID *fluid);
+float *smoke_get_ob_velocity_y(struct FLUID *fluid);
+float *smoke_get_ob_velocity_z(struct FLUID *fluid);
 float *smoke_get_force_x(struct FLUID *smoke);
 float *smoke_get_force_y(struct FLUID *smoke);
 float *smoke_get_force_z(struct FLUID *smoke);
diff --git a/intern/mantaflow/intern/manta_fluid_API.cpp 
b/intern/mantaflow/intern/manta_fluid_API.cpp
index b860b1e..f6bcc44 100644
--- a/intern/mantaflow/intern/manta_fluid_API.cpp
+++ b/intern/mantaflow/intern/manta_fluid_API.cpp
@@ -225,6 +225,21 @@ extern "C" float *smoke_get_velocity_z(FLUID *smoke)
        return smoke->getVelocityZ();
 }
 
+extern "C" float *smoke_get_ob_velocity_x(FLUID *fluid)
+{
+       return fluid->getObVelocityX();
+}
+
+extern "C" float *smoke_get_ob_velocity_y(FLUID *fluid)
+{
+       return fluid->getObVelocityY();
+}
+
+extern "C" float *smoke_get_ob_velocity_z(FLUID *fluid)
+{
+       return fluid->getObVelocityZ();
+}
+
 extern "C" float *smoke_get_force_x(FLUID *smoke)
 {
        return smoke->getForceX();
diff --git a/source/blender/blenkernel/intern/smoke.c 
b/source/blender/blenkernel/intern/smoke.c
index e8ad6ce..7f386d6 100644
--- a/source/blender/blenkernel/intern/smoke.c
+++ b/source/blender/blenkernel/intern/smoke.c
@@ -973,9 +973,9 @@ static void update_obstacles(Scene *scene, Object *ob, 
SmokeDomainSettings *sds,
 
        unsigned int collIndex;
        int *obstacles = smoke_get_obstacle(sds->fluid);
-       float *velx = NULL;
-       float *vely = NULL;
-       float *velz = NULL;
+       float *velx = smoke_get_ob_velocity_x(sds->fluid);
+       float *vely = smoke_get_ob_velocity_y(sds->fluid);
+       float *velz = smoke_get_ob_velocity_z(sds->fluid);
        float *velxOrig = smoke_get_velocity_x(sds->fluid);
        float *velyOrig = smoke_get_velocity_y(sds->fluid);
        float *velzOrig = smoke_get_velocity_z(sds->fluid);
@@ -990,8 +990,6 @@ static void update_obstacles(Scene *scene, Object *ob, 
SmokeDomainSettings *sds,
 
        int *num_obstacles = MEM_callocN(sizeof(int) * sds->res[0] * 
sds->res[1] * sds->res[2], "smoke_num_obstacles");
 
-       smoke_get_ob_velocity(sds->fluid, &velx, &vely, &velz);
-
        // TODO: delete old obstacle flags
        for (z = 0; z < sds->res[0] * sds->res[1] * sds->res[2]; z++)
        {

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to