0
$\begingroup$

I've seen that Blender has some difficulties handling boolean operations such as difference, as discussed for example here:

Boolean modifier

However, I noticed a strange behavior of the "boolean difference" operator. In the image below, there are two boxes. The big one is generated as a "cube" inside Blender. The smaller is imported from a .obj file. The two wireframes look similar. Then, I "subtract" a sphere from each of them.

Here is the result

The known artifacts appear only on the imported box, not on the cube generated internally. I already played with the "auto smooth" property and with the "custom split normals" without changing the result. Is it due to a different internal structure of the two boxes or it depends on attributes? How can I make the behavior of the operation on the imported objects equal to the internally generated cube?

$\endgroup$
6
  • $\begingroup$ How the imported geometry looks like? I guess it's just a mess of triangles hence the result... Try to convert to quads and recalculate the normals before adding the boolean modifier. $\endgroup$
    – brockmann
    Commented Apr 6, 2020 at 9:12
  • $\begingroup$ The imported box is composed of six rectangular faces. This is confirmed by looking at the wireframe. I also tried with triangular faces, i.e. each face is split into two triangles. No difference. $\endgroup$ Commented Apr 6, 2020 at 9:23
  • $\begingroup$ Does the outcome is the same when using a same sized box created in blender? $\endgroup$
    – brockmann
    Commented Apr 6, 2020 at 9:41
  • $\begingroup$ Try to change the shading for the smaller cube to flat shading Or click on the flipped Green triangle in the properties window and expand the "Normals" panel the check on "Auto Smooth". $\endgroup$ Commented Apr 6, 2020 at 9:45
  • $\begingroup$ The box size does not matter. I tried with equal sizes, one bigger or the other bigger. Also the dimension of the sphere does not matter. $\endgroup$ Commented Apr 6, 2020 at 10:08

0

You must log in to answer this question.

Browse other questions tagged .