Blender Git Commit Log
Git Commits -> Revision a3f091d
Revision a3f091d by Howard Trickey (master) February 21, 2021, 22:57 (GMT) |
Change Exact Boolean modifier to skip round trip through BMesh. The Exact modifier code had been written to avoid using BMesh but in the initial release the modifier still converted all Meshes to BMeshes, and then after running the boolean code on the BMeshes, converted the result back to a Mesh. This change skips that. Most of the work here is in getting the Custom Data layers right. The approach taken is to merge default layers from all operand meshes into the final result, and then use the original verts, edges, polys, and loops to copy or interpolate the appropriate custom data layers from all operands into the result. |
Commit Details:
Full Hash: a3f091d7ceda77181422625135225e55afa612c8
Parent Commit: 7883eb0
Lines Changed: +993, -19
2 Added Paths:
/source/blender/blenkernel/BKE_mesh_boolean_convert.h (+38, -0) (View)
/source/blender/blenkernel/intern/mesh_boolean_convert.cc (+834, -0) (View)
/source/blender/blenkernel/intern/mesh_boolean_convert.cc (+834, -0) (View)
5 Modified Paths:
/source/blender/blenkernel/BKE_customdata.h (+7, -0) (Diff)
/source/blender/blenkernel/CMakeLists.txt (+10, -0) (Diff)
/source/blender/blenkernel/intern/customdata.c (+7, -7) (Diff)
/source/blender/blenlib/intern/mesh_boolean.cc (+21, -7) (Diff)
/source/blender/modifiers/intern/MOD_boolean.c (+76, -5) (Diff)
/source/blender/blenkernel/CMakeLists.txt (+10, -0) (Diff)
/source/blender/blenkernel/intern/customdata.c (+7, -7) (Diff)
/source/blender/blenlib/intern/mesh_boolean.cc (+21, -7) (Diff)
/source/blender/modifiers/intern/MOD_boolean.c (+76, -5) (Diff)