Major Boolean Modifier Upgrade : Use as boolean object a whole collection

Just now tested materials. Looks like it still works using collections :grin: .

1 Like

And here we go.

https://developer.blender.org/D8816

6 Likes

Thank you for making the clear explanation!
I didn’t see updates in this topic for a couple of days.

Adding new modes to Boolean modifier would be aweome and time saving!
I tried adding Bisect modifier myself, but I’m not a programmer, so, my commit wasn’t accepted for the code quality reasons. Also, core developers suggested that Bisect should be probably a part of Boolean.

Take a look:
https://developer.blender.org/D6128

Very nice, thanks for this.

I want to mention, the wire/bounds display thing is basically the biggest reason I use Bool Tool, just because it automatically sets the object to display as bounds. Might sound kind of trivial but I don’t really see how one could work well with non-destructive booleans if they can’t even see the result, and it’s such a pain to manually change the viewport display properties for the boolean object every time.
So I think this is an important feature to actually have in the modifier, and worth solving the potential problems that come with temporarily overriding object display properties.

Regarding the issue Howard brought up of potential user confusion:
Would it be possible to gray-out the Display As property if it’s being overridden? Are there dynamic tooltips in Blender that could then communicate that “this property is being overridden by a modifier on Object X” or something?

1 Like

As far as I know, there are not other examples in Blender of having one UI element overridden by a different UI element in a different part of Blender, is there? So this would be a new concept.

@Howard_Trickey

I actually started to do this from the beginning, LOL. Should we just get rid of the display option?

It is kind of orthogonal to the collection thing, so at the least it would probably be better to remove it from the patch for collections, so that we can decide to back out of either of them independently should unexpected problems show up. It will make it easier to accept the patch right away if you removed it and then later made a separate patch for this. I am trying to chat with other devs now on their opinion about the display thing.

1 Like

My opinion: when an object is set to be a cutter always make it show up as bounding box and render-icon off, by design (as in BoolTool). Since in most cases it will only be needed as support geometry, not-to-be-seen in the scene.

1 Like

Two votes for display setting being a operator. You have to select the operator each time a new object added ,but this doesn’t override the settings and beats doing a object at a time. Right now union does bound box and the other two does wire.

boolean_display_icon

3 Likes

Thanks for your work on this @AFWS. I have now committed this change to master on your behalf.

4 Likes

Just installed the freshest 2.91 and tried boolean - oh, for me it looks and works amazing!
@AFWS & @Howard_Trickey Thank you very much for your work guys! It’s such a pleasure to work with blender! :slight_smile:

I have a question.

Is it possible in future patches to add snapping to the original shape (like it was before boolean) - for fast adjustment of position of the cutters?

When I have boolean modifier on the surface I can’t use snap to this surface on the both - cutter object or even his parent. Even if I turned off visibility of this modifier. I have to delete boolean modifier completely to adjust the position of any cutters and orient it to normal of the main object with snap to face. (oh, I hope you understand what I mean :slight_smile:)

1 Like

Hi I have feature request.: Do you think is good idea? ----to add to boolean modifier collection check box - remove all bool object after applay.
and maybe in default change display of boolean objects to bounds? Without that, result is looking ugly with those overlays.

People what do you think?

Thanks for Great work Howard.

There’s been lots of discussion about that already in this thread and in the patch here: https://developer.blender.org/D8816

Conclusion is that modifiers should not ever affect data on other objects, but an operator to do some of that manually might work.

Not affect. just add option to delete all of them if You want just join all collection in one object . I work with 3d printing— I wish to use boolean to join all object in one solid mesh . Now when I use collection operation on all objects I wish to have one solid mesh without any extra objects in this collection. I use regulary remesher to join all objects to one solid mesh becouse it is deleting all inside faces but remesher produce more smooth connection between two objects.I need to set on high value like 10 milions poligons to get sharper connection. Boolean do not do that, that is why is better in result from remesher. For me after applay boolean operation in collection rest of objects are no use for me. I keep all objects in separate collection if i want to use them to change something in my model and then I copy and add then to boolean collection to create one solid mesh.

You could use the outliner for this. Just right click on your collection of objects you no longer need and select “Delete Hierarchy”

its the same as invert selection and delete but in different place and different name of operation but still the same extra move to make. In what case of workflow it is good to just leave these objects without the one that the Boolean takes after apply union in this collection? Im just curious. is there different field of 3d that will re use those left objects? I talking specyficly about collection Boolean function.

@HooglyBoogly

So, what do you think about this? Added viewport/render option from outliner. The one issue I found with viewport/render option for collection, it doesn’t enable all objects if a few was previously disabled from outliner. Don’t have the “shift” and “ctrl” of the outliner.

Wire and bounding box moved under operation? Not sure if I like this ,but was getting to crowded beside the others.
object_disable_1

Space to prevent other property from resizing? Not sure if it would be better to just let it resize when something selected? Or maybe just add icons when nothing selected.
object_disable_2

3 Likes

Although I don’t like the mockups, I think that those operators are necessary.
For Wire and BBox a label “Display operand as” is needed. Or something like that.

2 Likes

That’s in the operator description. If you look, no other modifier with a operator has a label like the other properties. Although, with the way it is now, users might think it’s for the modifier object.