diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-09-07 06:00:44 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-09-07 06:00:44 +0400 |
commit | 05868b8a88c5646142b0fa979408eafcfdc4bcc3 (patch) | |
tree | 5129e747c9ea1a130e739c81509a9f85a46aa693 /source/blender/modifiers/intern/MOD_screw.c | |
parent | a167ee12629487a40b8a4822224b06fce18f51a4 (diff) |
fix for screw modifier - was clearning all faces, CDDM_calc_normals was overwriting the mface array because it re-tesselated polygons.
Diffstat (limited to 'source/blender/modifiers/intern/MOD_screw.c')
-rw-r--r-- | source/blender/modifiers/intern/MOD_screw.c | 12 |
1 files 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; } |