From 3c28eecb6e66313422cdfccc52431b945030fb8c Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Thu, 18 Sep 2014 14:55:33 +1000 Subject: Fix T41862: Autosmooth & multi-material glitch --- source/blender/blenkernel/intern/cdderivedmesh.c | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/source/blender/blenkernel/intern/cdderivedmesh.c b/source/blender/blenkernel/intern/cdderivedmesh.c index 116f9d9e64c..72de934d08c 100644 --- a/source/blender/blenkernel/intern/cdderivedmesh.c +++ b/source/blender/blenkernel/intern/cdderivedmesh.c @@ -1324,13 +1324,11 @@ static void cdDM_drawMappedFacesGLSL(DerivedMesh *dm, glNormal3fv(nor); } } - - if (lnors) { - ln1 = &lnors[0][0]; - ln2 = &lnors[0][1]; - ln3 = &lnors[0][2]; - ln4 = &lnors[0][3]; - lnors++; + else if (lnors) { + ln1 = &lnors[a][0]; + ln2 = &lnors[a][1]; + ln3 = &lnors[a][2]; + ln4 = &lnors[a][3]; } cddm_draw_attrib_vertex(&attribs, mvert, a, mface->v1, 0, ln1, smoothnormal); @@ -1651,13 +1649,11 @@ static void cdDM_drawMappedFacesMat(DerivedMesh *dm, glNormal3fv(nor); } } - - if (lnors) { - ln1 = &lnors[0][0]; - ln2 = &lnors[0][1]; - ln3 = &lnors[0][2]; - ln4 = &lnors[0][3]; - lnors++; + else if (lnors) { + ln1 = &lnors[a][0]; + ln2 = &lnors[a][1]; + ln3 = &lnors[a][2]; + ln4 = &lnors[a][3]; } /* vertices */ -- cgit v1.2.3