
So recently I’ve been building out a tool that solves one of my many headaches: Booleans break your shading. Everyone here knows the after picture.. black faces, smeared normals, a seam full of sliver edges. Smooth by Angle helps, but the manual cleanup is still merge by distance, limited dissolve, retopo the seam, check your normals.
Boolmend does that dance in one click. It fixes the shading everywhere, and repairs the topology where the boolean actually tore the mesh: doubled seam verts welded, the sliver edges that make a clamped Bevel collapse removed, coplanar junk dissolved, n-gons rebuilt into quads. A mesh your boolean cut cleanly has nothing to repair, and it comes back with its topology exactly as it was, shading fixed, with the status line telling you which case you got.
Four meshes it won’t touch as of now, and it says which before it starts: one with no faces, one linked from another file (make it local first), one whose mesh data is shared by several objects (a repair that went wrong there couldn’t be put back for the others, so make it single-user first), and a scan or dense sculpt whose ordinary edges are shorter than the merge distance, where most of the mesh would read as boolean damage. You get a one-line reason and an untouched model, not a half-repaired one. If it ever dies partway through on any mesh it restores the mesh itself rather than leaving that to undo, because a failed operator pushes no undo step and your ctrl-Z would take your own last edit instead.
That’s the entire addon. No suite, no pie menus, no subscription. The narrow thing, done properly.
- pure Python, ships as a .zip, GPL
- Blender 4.2+, tested headless on 4.2 LTS and current stable on every release
- $15 one-time, early access: the operator in the GIF is the download, and every future update is included. If it doesn’t do what this thread says, refund on request within 6 months, no questions asked
if your meshes never fight you after a boolean, you don’t need this. And if your Bevel was producing nothing rather than garbage, that’s Blender clamping against your model’s own thin walls, not boolean litter, and no cleanup changes it.
Feel free to ask any questions and I’ll be happy to help. If you have a cursed mesh that breaks it, I genuinely want to see it ![]()