Boolean difference doesn't work

In the .blend file there is an object called difference and an object called walls.
The object difference must be subtracted from walls.
It doesn’t work also with union and intersect.

http://www.pasteall.org/blend/31687

In the .blend file there is an object called difference and an object called walls.
Not in the blend file you attached.
There’s an object called Plane with a mesh called Walls and an object called Cube.003 with a mesh called Subtract, are these the same ?

Remove all the unnecessary crap and just supply a blend file with the relevant objects so we don’t have to use guesswork

The Walls mesh has a load of non-manifold edges you need to fix first. You have some kind of arch in the wall, what is that doing there ?


In Blender appears a text near the boolean modifier (cannot execute boolean operation).
Now there are (in the file) only two meshes.

I suspect the problem is that both of these meshes are full of large irregular n-gons, and Blender can’t figure out how to cut them. The messier your topology is, the less likely booleans will work. This topology is extremely messy.

I semplified the mesh in this file and fixed all the non-manifold vertices.
There are manifold Ngons, but it’s the mesh, must have two archs close together.

And this is where you have error.
1st, this is internal face in Difference object and second - 2 faces where normals point 2 ways - delete both faces and remove doubles after.
3d mesh and Booleans in particular need some love.



Object named Plane.016 has unapplied object scale. Ctrl+A -> scale to apply.

Difference object has overlapping geometry. Two large inside faces are on top of each other (moved apart in the screenshot) and the top part has two overlapping edges (arrow) on each side. Overlaps is what breaks the boolean but you probably intended this to be one connected geometry so select all, W -> remove doubles to remove double vertices, ctrl+alt+shift+M and X -> faces to remove the resulting interior face.

Ok thank you very much now difference works well!!

If you ever get a Boolean modifier that just won’t cooperate, of course check for non-manifolds and inverted normals, apply scale. Remove doubles. The usual stuff. (Best to get to the source of the problem and fix that)

If that still doesn’t solve it you now have the option in Edit Mode to cut into part of a mesh using another (selected) part of that mesh. Mesh > Faces > Intersect.
Then clean up the extra geometry you don’t need.
Available in the 2.72 test build.