Commit: 76ba615f5c306ea228e47e33a0054f417a261f2e
Author: Mai Lavelle
Date: Tue Apr 24 04:08:16 2018 -0400
Branches: temp-modifier-rm-cddm
https://developer.blender.org/rB76ba615f5c306ea228e47e33a0054f417a261f2e
Add modifier_deformVerts_ensure_normals
Same as modwrap_deformVerts but for Mesh
===================================================================
M source/blender/blenkernel/BKE_modifier.h
M source/blender/blenkernel/intern/modifier.c
===================================================================
diff --git a/source/blender/blenkernel/BKE_modifier.h
b/source/blender/blenkernel/BKE_modifier.h
index 02337110289..2972cdd7dd8 100644
--- a/source/blender/blenkernel/BKE_modifier.h
+++ b/source/blender/blenkernel/BKE_modifier.h
@@ -497,6 +497,10 @@ void modifier_deformVerts(
struct ModifierData *md, const struct ModifierEvalContext *ctx,
struct Mesh *mesh, float (*vertexCos)[3], int numVerts);
+void modifier_deformVerts_ensure_normals(
+ struct ModifierData *md, const struct ModifierEvalContext *ctx,
+ struct Mesh *mesh, float (*vertexCos)[3], int numVerts);
+
void modifier_deformMatrices(
struct ModifierData *md, const struct ModifierEvalContext *ctx,
struct Mesh *mesh, float (*vertexCos)[3], float (*defMats)[3][3], int
numVerts);
diff --git a/source/blender/blenkernel/intern/modifier.c
b/source/blender/blenkernel/intern/modifier.c
index 6722ed2aab1..81f1e736edc 100644
--- a/source/blender/blenkernel/intern/modifier.c
+++ b/source/blender/blenkernel/intern/modifier.c
@@ -870,6 +870,18 @@ void modifier_deformVerts(struct ModifierData *md, const
ModifierEvalContext *ct
}
}
+void modifier_deformVerts_ensure_normals(struct ModifierData *md, const
ModifierEvalContext *ctx,
+ struct Mesh *mesh,
+ float (*vertexCos)[3], int numVerts)
+{
+ const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
+
+ if (mesh && mti->dependsOnNormals && mti->dependsOnNormals(md)) {
+ BKE_mesh_calc_normals(mesh);
+ }
+ modifier_deformVerts(md, ctx, mesh, vertexCos, numVerts);
+}
+
void modifier_deformMatrices(struct ModifierData *md, const
ModifierEvalContext *ctx,
struct Mesh *mesh,
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts)
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs