Boolean unreliablility
Closed, InvalidPublic

Description

Blender booleans have always been extremely finicky especially when input meshes have wonky normals or they aren't water tight. I feel competent with preparing mesh inputs properly yet booleans remain unpredictable. Usually I can get something working by decimating/remeshing, exporting, re-import, etc.

But with this particular file (attached), none of my typical bribes successfully get the boolean to function correctly. If you open the file you'll see the "Cube" object in local mode with a boolean modifier urging the "Sphere" object to subtract its volume from Cube.

Is it safe to say booleans aren't "quirky" as much as they are "buggy"?

Details

Type
Bug
Kent Trammell (theluthier) updated the task description. (Show Details)
Kent Trammell (theluthier) raised the priority of this task from to Needs Triage.

Is the file which you attached not broken?
I cannot find Sphere object when I delete Boolean modifier.

I'm sorry, I did not notice though it was set in a local view.

I think that it is caused by the place where two objects contact with.
There is a fold inside of Cube object.

Examination of the 'cube' object using Mesh Analysis set to 'intersect' shows lots of intersecting triangles running down the sharp interior creases of the 'cube' (squash?). Closer inspection of (some) of these areas does indeed show self-intersecting geometry. I don't think that the boolean function likes this situation and it just might be the cause of your trouble.

Bastien Montagne (mont29) claimed this task.

Definitively not a bug, just move your sphere slightly such that it does not cut some self-intersecting geometry and it works OK, like in file below.

Ah ok, thanks for the diagnosis @perfection cat (sindra1961) @Ignatz (ignatz) @Bastien Montagne (mont29). It's such a bummer that booleans fail so easily.

Sorry for the false bug.

The boolean library can do great work because it assumes strict sane input, just use manifold volumes without self intersections.
I don't think you'll find better boolean tools out there easily... but you never know!

Showing to people how awesome program X or Y does it instead could inspire someone!

I have nothing but the highest respect for Blender devs, so please don't read this as a list of demands. Rather I'm just an artist outlining a [fantasy] workflow, entirely ignorant to how/if it can be done on the backend.

For sculpting, the current state of booleaning is a bummer because dyntopo unlocks a profoundly flexible creative environment that comes to a screeching halt when trying to boolean.

Booleans offer the hope of a similarly profound creative environment: "Bam subtract, bam union, bam intersect, subtract again, and wow! That would have been difficult to do otherwise." Like the feeling we get from this modo + mesh fusion demo.

So if dyntopo and booleans could work together reliably...eureka!

Currently we have one popular tool (dyntopo) which frequently generates non-manifold volumes with self-intersections that renders its geometry incompatible with another popular tool (booleans). While we can retopologize to ensure manifold geo, the boolean will just create more bad topology that needs more retopology. All of this significantly extends the duration of a sculptor's workflow, compared to the blissful alternative of booleans just working with dyntopo (or all) input geo.

My apologies if the bug tracker isn't the right place for this discussion. [Exits with soapbox under-arm...]

"Mesh Fusion" features wouls be totally possible with our boolean library. It's having the same limits - needs manifold (water tight) models.

To my knowledge there's no boolean tool out there handling what you describe. So it would be a real eureka!
Maybe Sergey or Campbell or Howard can have a say too though...