Commit: 20283bfa0b1e38f6c33271b97f22488103243b50
Author: Sergey Sharybin
Date:   Wed Feb 15 14:58:49 2017 +0100
Branches: master
https://developer.blender.org/rB20283bfa0b1e38f6c33271b97f22488103243b50

Fix wrong loop normals left after face splitting

Let's keep all data in a consistent state, so we don't have any
issues later on.

This solves rendering artifacts mentioned in the previous commit.

===================================================================

M       source/blender/blenkernel/intern/mesh.c

===================================================================

diff --git a/source/blender/blenkernel/intern/mesh.c 
b/source/blender/blenkernel/intern/mesh.c
index 75e2a13f06..42b6a841da 100644
--- a/source/blender/blenkernel/intern/mesh.c
+++ b/source/blender/blenkernel/intern/mesh.c
@@ -2300,6 +2300,11 @@ void BKE_mesh_split_faces(Mesh *mesh)
                        loop_prev = loop;
                }
        }
+       /* Adding new vertices will change loop normals.
+        * Since we ensured there is CD_NORMAL layer for loops we must bring it
+        * it back to a consistent state.
+        */
+       BKE_mesh_calc_normals_split(mesh);
 #ifdef VALIDATE_MESH
        BKE_mesh_validate(mesh, true, true);
 #endif

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to