diff options
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/BKE_DerivedMesh.h | 2 | ||||
-rw-r--r-- | source/blender/blenkernel/BKE_mesh.h | 6 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/DerivedMesh.c | 2 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/mesh_evaluate.c | 4 |
4 files changed, 9 insertions, 5 deletions
diff --git a/source/blender/blenkernel/BKE_DerivedMesh.h b/source/blender/blenkernel/BKE_DerivedMesh.h index d8af90b4ae7..26a160a260c 100644 --- a/source/blender/blenkernel/BKE_DerivedMesh.h +++ b/source/blender/blenkernel/BKE_DerivedMesh.h @@ -97,8 +97,6 @@ struct BMEditMesh; struct ListBase; struct PBVH; -#define DM_OMP_LIMIT 10000 /* setting zero so we can catch bugs in OpenMP/BMesh */ - /* number of sub-elements each mesh element has (for interpolation) */ #define SUB_ELEMS_VERT 0 #define SUB_ELEMS_EDGE 2 diff --git a/source/blender/blenkernel/BKE_mesh.h b/source/blender/blenkernel/BKE_mesh.h index 43e425b5ce1..627cc8f42e5 100644 --- a/source/blender/blenkernel/BKE_mesh.h +++ b/source/blender/blenkernel/BKE_mesh.h @@ -63,6 +63,12 @@ struct UvElement; extern "C" { #endif +/* setting zero so we can catch bugs in OpenMP/BMesh */ +#ifdef DEBUG +# define BKE_MESH_OMP_LIMIT 0 +#else +# define BKE_MESH_OMP_LIMIT 10000 +#endif /* *** mesh.c *** */ diff --git a/source/blender/blenkernel/intern/DerivedMesh.c b/source/blender/blenkernel/intern/DerivedMesh.c index da3b9cd9118..359141b2c8c 100644 --- a/source/blender/blenkernel/intern/DerivedMesh.c +++ b/source/blender/blenkernel/intern/DerivedMesh.c @@ -1685,7 +1685,7 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos DM_add_edge_layer(dm, CD_ORIGINDEX, CD_CALLOC, NULL); DM_add_poly_layer(dm, CD_ORIGINDEX, CD_CALLOC, NULL); -#pragma omp parallel sections if (dm->numVertData + dm->numEdgeData + dm->numPolyData >= DM_OMP_LIMIT) +#pragma omp parallel sections if (dm->numVertData + dm->numEdgeData + dm->numPolyData >= BKE_MESH_OMP_LIMIT) { #pragma omp section { range_vn_i(DM_get_vert_data_layer(dm, CD_ORIGINDEX), dm->numVertData, 0); } diff --git a/source/blender/blenkernel/intern/mesh_evaluate.c b/source/blender/blenkernel/intern/mesh_evaluate.c index bf8f1fad7f0..13aa3994361 100644 --- a/source/blender/blenkernel/intern/mesh_evaluate.c +++ b/source/blender/blenkernel/intern/mesh_evaluate.c @@ -168,7 +168,7 @@ static void mesh_calc_normals_poly_accum(MPoly *mp, MLoop *ml, v_curr = mvert[ml[i].v].co; add_newell_cross_v3_v3v3(polyno, v_prev, v_curr); - /* Unrelated to normalize, calcualte edge-vector */ + /* Unrelated to normalize, calculate edge-vector */ sub_v3_v3v3(edgevecbuf[i_prev], v_prev, v_curr); normalize_v3(edgevecbuf[i_prev]); i_prev = i; @@ -212,7 +212,7 @@ void BKE_mesh_calc_normals_poly(MVert *mverts, int numVerts, MLoop *mloop, MPoly if (only_face_normals) { BLI_assert(pnors != NULL); -#pragma omp parallel for if (numPolys > BM_OMP_LIMIT) +#pragma omp parallel for if (numPolys > BKE_MESH_OMP_LIMIT) for (i = 0; i < numPolys; i++) { BKE_mesh_calc_poly_normal(&mpolys[i], mloop + mpolys[i].loopstart, mverts, pnors[i]); } |