← All ideas
  • Published 8 Jun 2021

Geometry nodes fast boolean solver.

Basically the issue is that the current solver used for geometry nodes bool node is really (really) slow compared to the solver used by the fast boolean modifiers. Its in fact so slow that even if you just have a few thousand verts on your objects and no other modifiers, suddenly you start getting so low framerates that working with your geometry with the geometry node modifier on will become quite impossible surprisingly fast:

vimeo.com/560324005 (a comparison)

There are many artists that day for day deploy techniques like the demonstrated here: youtube.com/watch . Adding many modifiers for something as simple as an inset boolean - then they have to reproduce the same modifier stack over and over again for each object they want that specific effect on.

With geometry nodes and Blenders new asset manager, one could simply reuse node groups or custom modifiers that does specific tasks like these & geometry nodes already has the power to do simpler actions like the one showed in the inset boolean tutorial, however for complex meshes having (at least) several thousand of verts the bool node will simply not be useful for this kind if usecase until it sees some decent performance improvements.

I had a chat with an addon developer "CG Thoughts" on Discord a few weeks ago showing him a simple node setup that could be used to procedurally generate some nice hard surface edge transitions around boolean cutters. This was his thought on it: Imgur

My guess is that the reason for there only being one solver available currently is to save time porting over everything. But even if its a bit of work involved converting the data to the correct types for it to spit out whatever class is used for geometry in geometry nodes, Im sure it would bring in an larger audience to start using geometry nodes in day-to-day workflows. And I think at geometry nodes current stage I would argue its a well needed feature

Screenshot 2021-06-08 110337.jpg

96.7%

Development Status: Open

Upvote 29 Downvote 1
MrWillyWonka
8 Jun 2021

6 Comments

fructdw

I think there are plans to remove fast solver eventually once exact becomes less slow, not exposing fast solver in gn right now might be done for future compatibility.

1
silasmoser

What? Fast solver literally gets better results in some cases. That would be a shame

softyoda

Yep, we need a solver that can take surface or volume for both the brush object or the mesh you want to boolean to. Just like the houdini boolean allow to have volume vs volume or volume vs surface or surface vs volume, or surface vs surface (basicly knife).

testure

seems like a better topic for the GN thread over on devtalk no? not sure you're going to get a lot of insightful discussion on the matter here.

1
Marcel-Winklmueller

In my case the fast solver leads to my desired results A LOT MORE OFTEN then the exact solver.

So its not just speed but quality. the exact solver just misses faces, leaves my meshes open. This makes the boolean operation somewhat unusable.

I just now had to revert to use 2 meshes with 2 geo nodes that use the boolean modifer because in geo nodes i just could not make it work.

the fast solver did the job without issue though

wavedevice

I think more solvers are better than just one solver, since most solvers have their own idiosyncrasies and will misbehave in their own way. In some situations when you get artifacts in the results, changing the solver solves the problem. They could just add the solver of OpenScad but it is slow because it was created for cad and not for realtime speed. Hence all solvers have their advantages and disadvantages. My suggestions are:

  • Ban ALL the modifiers forever and move everything to Geonodes.

  • Add the OpenScad solver and we will have 3 options to choose.