Mesh visible around edges of boolean subtraction

Dave Buchan

New Member
I created a wall using a plane (in fact two planes and a cylinder joining them).

I then created a hole in the wall by subtracting a cylinder using a boolean. I found that Beyond shows various mesh lines around the hole. I concluded this was due to the fact that Beyond is having trouble making a round hole in the rectangular mesh of the wall.

My next attempt was to make the hole in the wall by creating a N-gon, extrude it, and then subtracting the extrusion (instead of the cylinder) from the wall. This way the mesh should be able to use triangles around the hole and fit them properly in the wall's rectangular mesh. Surprisingly, this method also results in mesh lines visible around the hole.

Does anybody know why it is doing this and how to stop it? I tried various settings in the Laser, Line properties but couldn't eliminate the lines. Also, which mesh lines show up varies with camera position. Changing number of sides of N-gon doesn't help.

A screen cap follows (see red arrows).

Dave

mesh.png
 
In 3dsmax software, it does not allow the model to have faces larger than 4 sides, otherwise various problems will occur during rendering. I think beyond3d will be the same. The boolean method you use to get a circle directly is very error prone, so you also need to correspond each edge of the circle with other edges to form a model smaller than four sides.:)
 

Attachments

  • 111.jpg
    111.jpg
    62.8 KB · Views: 11
Interesting. Thanks, jujun!

In my opinion this is a fairly serious issue that should be fixed because booleans are a main workhorse function for building complex objects. I suppose if 3dsmax is doing similar things, it's a hard problem to solve.

Dave
 
Hi Dave,

Thanks for writing to us. Please create a support ticket and include this scene. You can create a ticket here: https://support.pangolin.com
Let Aaron know that he should forward your scene directly to William Benner.

I will tell you that the Boolean tool is the hardest thing we've ever written. Seriously! BEYOND consists of more than 3 million lines of code, including 1 million on B3D alone. Of all of the things we've ever done, Boolean is the hardest.

Mike Dunn once said "Good art is never finished, only abandoned..." The Boolean tool is one of those things that we got to work (mostly), but then abandoned it.

In my recollection, it would work for relatively simple scenes, but had problems on more complex scenes. The scene you pointed to above certainly *seems* simple, and so it should have worked okay. So it makes me wonder if we recently broke it during a software update, or if your scene is more complicated than it looks. Therefore it might be helpful to have the very scene you created above, and then go from there. It has been a few years since we've looked at boolean, and thus when taking another look, we might come at it from a new angle.

In the mean time, a workaround would be to create the scene (or object) in another tool, and then export it as FBX and bring that into BEYOND 3D.

By the way, although Boolean kind of seems like it would be a tool used a lot, that must not be the case. BEYOND 3D has been a part of BEYOND for more than 10 years, and I think you're the second person to comment. Nevertheless, we'll take this opportunity to take another look at it.

Best regards,

William Benner
 
William,

Thanks for the reply. I have entered a ticket for your consideration.

For anyone's interest, I include here a zip file with three .beyond3d file examples of this issue.

To paraphrase jujun's reply, the issue appears to occur when a mesh cell has more than 3 nodes associated it with and when a node appears along a mesh line (not at a vertex).

In the first example of the zip file, the issue looks like this:

boolean 01.png

Red arrows point to the defects in the render.

To correct this, I select the boolean, make it an editable object, go to Points mode, and select nodes and under Modelling I hit Join.

This picture shows all the troublesome nodes:

boolean 02.png

Each troublesome node is fixed one at a time.
For the issue at the top, I selected a troublesome node and the node I want to join to:

boolean 02a.png

Go to Modelling and hit Join. The result is:

boolean 02b.png

When all have been fixed:

boolean 03.png

Dave
 

Attachments

  • boolean.zip
    493.7 KB · Views: 5
Back
Top