Blender Git Commit Log
Git Commits -> Revision 0a01cc0
Revision 0a01cc0 by Bastien Montagne (soc-2017-normal-tools) November 9, 2017, 16:03 (GMT) |
LNorSpaceArray: Ease access to loop in BMesh context. Unlike 'regular' mesh, BMesh makes it really hard to get a BMLoop from its index - it's designed to work in reverse, with passing BMLoop pointers around, not their indices. Henceforce, changed MLoopNorSpaceArray to support two kind of loop storage, either indices (when used with regular Mesh), or BMLoop pointers themselves (when used with BMesh). Changes are luckily fairly simple and straightforward, so would not expect too much issues here (quick tests seem to be all OK), and this makes handling of clnors in BMesh context much eaiser (avoiding some mapping or double-looping to get loops from their indices...). For same reason, also added BMLoop pointer itself in TransDataLoopNormal struct. There's still some (new) code to adjust/simplify, will be done in next commits. |
Commit Details:
Full Hash: 0a01cc04d6fe4a4baf8b90368b47d718b8cccc59
Parent Commit: 1f649dc
Lines Changed: +107, -56
6 Modified Paths:
/source/blender/blenkernel/BKE_mesh.h (+18, -2) (Diff)
/source/blender/blenkernel/intern/mesh.c (+11, -8) (Diff)
/source/blender/blenkernel/intern/mesh_evaluate.c (+45, -20) (Diff)
/source/blender/bmesh/bmesh_class.h (+1, -0) (Diff)
/source/blender/bmesh/intern/bmesh_mesh.c (+12, -7) (Diff)
/source/blender/editors/mesh/editmesh_tools.c (+20, -19) (Diff)
/source/blender/blenkernel/intern/mesh.c (+11, -8) (Diff)
/source/blender/blenkernel/intern/mesh_evaluate.c (+45, -20) (Diff)
/source/blender/bmesh/bmesh_class.h (+1, -0) (Diff)
/source/blender/bmesh/intern/bmesh_mesh.c (+12, -7) (Diff)
/source/blender/editors/mesh/editmesh_tools.c (+20, -19) (Diff)