diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-09-11 12:28:16 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-09-11 12:28:16 +0400 |
commit | 0383fb53414366d4ede19622fbe5bb5e6f782a0f (patch) | |
tree | f9137000aeb86b710773e41743671e70f44b4463 /source/blender/modifiers | |
parent | 75b393612809252349bf4062bc45df14c1a5dfe5 (diff) | |
parent | ff04beb3e4681e6849030595c80ed692c3bd9be1 (diff) |
svn merge -r40104:40117 https://svn.blender.org/svnroot/bf-blender/trunk/blender
Diffstat (limited to 'source/blender/modifiers')
-rw-r--r-- | source/blender/modifiers/CMakeLists.txt | 9 | ||||
-rw-r--r-- | source/blender/modifiers/intern/MOD_navmesh.cpp | 18 | ||||
-rw-r--r-- | source/blender/modifiers/intern/MOD_weightvgproximity.c | 16 |
3 files changed, 21 insertions, 22 deletions
diff --git a/source/blender/modifiers/CMakeLists.txt b/source/blender/modifiers/CMakeLists.txt index 8c58e4f3a33..9a35e9762df 100644 --- a/source/blender/modifiers/CMakeLists.txt +++ b/source/blender/modifiers/CMakeLists.txt @@ -35,11 +35,8 @@ set(INC ../makesrna ../bmesh ../render/extern/include - ../editors/include - ../gpu ../../../intern/elbeem/extern ../../../intern/guardedalloc - ../../../extern/recastnavigation/Recast/Include ) set(INC_SYS @@ -122,7 +119,13 @@ if(NOT WITH_MOD_FLUID) endif() if(WITH_GAMEENGINE) + # for MOD_navmesh.cpp add_definitions(-DWITH_GAMEENGINE) + list(APPEND INC + ../gpu + ../../../extern/recastnavigation/Recast/Include + ../editors/include # XXX - BAD LEVEL CALL, REMOVE BEFORE RELEASE + ) endif() blender_add_lib(bf_modifiers "${SRC}" "${INC}" "${INC_SYS}") diff --git a/source/blender/modifiers/intern/MOD_navmesh.cpp b/source/blender/modifiers/intern/MOD_navmesh.cpp index bc97023a58b..d32281c12b6 100644 --- a/source/blender/modifiers/intern/MOD_navmesh.cpp +++ b/source/blender/modifiers/intern/MOD_navmesh.cpp @@ -26,10 +26,20 @@ * */ #include <math.h> -#include "Recast.h" + +#ifdef WITH_GAMEENGINE +# include "Recast.h" +#endif extern "C"{ -#include "ED_navmesh_conversion.h" + +#ifdef WITH_GAMEENGINE +# include "ED_navmesh_conversion.h" +# include "BIF_gl.h" +# include "GPU_buffers.h" +# include "GPU_draw.h" +# include "UI_resources.h" +#endif #include "DNA_mesh_types.h" #include "DNA_meshdata_types.h" @@ -43,10 +53,6 @@ extern "C"{ #include "BKE_particle.h" #include "BKE_customdata.h" #include "MEM_guardedalloc.h" -#include "BIF_gl.h" -#include "GPU_buffers.h" -#include "GPU_draw.h" -#include "UI_resources.h" static void initData(ModifierData *md) { diff --git a/source/blender/modifiers/intern/MOD_weightvgproximity.c b/source/blender/modifiers/intern/MOD_weightvgproximity.c index 717f2b7001b..a2cca9ea77b 100644 --- a/source/blender/modifiers/intern/MOD_weightvgproximity.c +++ b/source/blender/modifiers/intern/MOD_weightvgproximity.c @@ -63,16 +63,6 @@ #define OUT_OF_MEMORY() ((void)printf("WeightVGProximity: Out of memory.\n")) /** - * Returns the squared distance between two given points. - */ -static float squared_dist(const float *a, const float *b) -{ - float tmp[3]; - VECSUB(tmp, a, b); - return INPR(tmp, tmp); -} - -/** * Find nearest vertex and/or edge and/or face, for each vertex (adapted from shrinkwrap.c). */ static void get_vert2geom_distance(int numVerts, float (*v_cos)[3], @@ -137,19 +127,19 @@ static void get_vert2geom_distance(int numVerts, float (*v_cos)[3], * This will lead in prunning of the search tree. */ if (dist_v) { - nearest_v.dist = nearest_v.index != -1 ? squared_dist(tmp_co, nearest_v.co) : FLT_MAX; + nearest_v.dist = nearest_v.index != -1 ? len_squared_v3v3(tmp_co, nearest_v.co) : FLT_MAX; /* Compute and store result. If invalid (-1 idx), keep FLT_MAX dist. */ BLI_bvhtree_find_nearest(treeData_v.tree, tmp_co, &nearest_v, treeData_v.nearest_callback, &treeData_v); dist_v[i] = sqrtf(nearest_v.dist); } if (dist_e) { - nearest_e.dist = nearest_e.index != -1 ? squared_dist(tmp_co, nearest_e.co) : FLT_MAX; + nearest_e.dist = nearest_e.index != -1 ? len_squared_v3v3(tmp_co, nearest_e.co) : FLT_MAX; /* Compute and store result. If invalid (-1 idx), keep FLT_MAX dist. */ BLI_bvhtree_find_nearest(treeData_e.tree, tmp_co, &nearest_e, treeData_e.nearest_callback, &treeData_e); dist_e[i] = sqrtf(nearest_e.dist); } if (dist_f) { - nearest_f.dist = nearest_f.index != -1 ? squared_dist(tmp_co, nearest_f.co) : FLT_MAX; + nearest_f.dist = nearest_f.index != -1 ? len_squared_v3v3(tmp_co, nearest_f.co) : FLT_MAX; /* Compute and store result. If invalid (-1 idx), keep FLT_MAX dist. */ BLI_bvhtree_find_nearest(treeData_f.tree, tmp_co, &nearest_f, treeData_f.nearest_callback, &treeData_f); dist_f[i] = sqrtf(nearest_f.dist); |