From 05868b8a88c5646142b0fa979408eafcfdc4bcc3 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 7 Sep 2011 02:00:44 +0000 Subject: [PATCH] fix for screw modifier - was clearning all faces, CDDM_calc_normals was overwriting the mface array because it re-tesselated polygons. --- source/blender/modifiers/intern/MOD_screw.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/source/blender/modifiers/intern/MOD_screw.c b/source/blender/modifiers/intern/MOD_screw.c index 44d118c08d4..ef654a7479d 100644 --- a/source/blender/modifiers/intern/MOD_screw.c +++ b/source/blender/modifiers/intern/MOD_screw.c @@ -825,16 +825,16 @@ static DerivedMesh *applyModifier(ModifierData *md, Object *ob, med_new->crease= med_new_firstloop->crease; med_new++; } - + + /* BMesh implimentation info - need to calculate polys before recalculating + * normals, since normal calc overwrites MFaces from Polys */ + CDDM_tessfaces_to_faces(result); + if((ltmd->flag & MOD_SCREW_NORMAL_CALC) == 0) { CDDM_calc_normals(result); } - dm = CDDM_copy(result, 1); /*builds ngon faces from tess (mface) faces*/ - result->needsFree = 1; - result->release(result); - - return dm; + return result; }