Fix #35513: Multires modifier normal corruption on apply base

Seems it was simply missing mesh normals update in multiresModifier_base_apply.
This commit is contained in:
Sergey Sharybin 2013-05-28 08:40:47 +00:00
parent 8ebc246a9a
commit b39a532083

@ -857,6 +857,12 @@ void multiresModifier_base_apply(MultiresModifierData *mmd, Object *ob)
MEM_freeN(origco);
cddm->release(cddm);
/* Vertices were moved around, need to update normals after all the vertices are updated
* Probably this is possible to do in the loop above, but this is rather tricky because
* we don't know all needed vertices' coordinates there yet.
*/
BKE_mesh_calc_normals(me->mvert, me->totvert, me->mloop, me->mpoly, me->totloop, me->totpoly, NULL);
/* subdivide the mesh to highest level without displacements */
cddm = CDDM_from_mesh(me, NULL);
DM_set_only_copy(cddm, CD_MASK_BAREMESH);