Blender Git Commit Log

Git Commits -> Revision 0a01cc0

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)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021