← All ideas
  • Published 25 Jun 2020

Vertex Group Option For Boolean Modifier "object"

I would like to suggest that an option for vertex groups be included for the "boolean object" in the Boolean Modifier. I think It would be nice to have the ability to select a particular vertex group in the boolean object to act as the boolean operand.

My rationale for this proposal is from a scene management perspective. Here is an example of a possible use case; Say I have a building model with about 50 windows, all cutting into separate walls in the building, here is how I currently tackle such a situation.

I create a mesh object for the window, then another mesh object for the opening, which will be used to perform the boolean "difference" operation with the wall object.

I then parent the window object to the opening object or vice versa, so I can move or scale them together if the need arises.

Working this way, I have created two individual objects for each window instance, making a total of 100 unique objects for 50 windows, which I have to keep track of. (they probably won't all have unique mesh data, but they will certainly have unique locations).

The method outline above works for me, however, I think it would be nicer to have the opening mesh as part of the window object in its own "opening" vertex group, that way, I have a single window object, but only the "opening" vertex group will participate in the boolean operation. It is also "in line" with the way one might model other components of the window, e.g the glazing is a vertex group, the frame is another vertex group, the handle is another vertex group, etc, separated based on materials or some other criteria but all combined into one mesh object.

I think that this can be implemented such that, if the user does not specify any vertex groups for the boolean object, the boolean operation will operate just as it does now, this way, the feature will not disrupt the workflow of any user who does not desire to use vertex groups in the boolean operation.

Thanks

100%

Development Status: Open

Upvote 2 Downvote 0
ekirigwejames
25 Jun 2020

2 Comments

peter.boos

It's no problem for blender to handle 100 objects usually. If you want a speed /memmory improvement. Then should create linked duplicates not simple copy for those windows. You might consider using array modifier as well (sky scraper windows / walls).

If this was done with vertex groups, i assume it would easily cause non manifold shapes, which is i think the hardest problem to tackle with it.

ekirigwejames Author

* @peter.boos * Thanks for your feedback. Perhaps, I am not able to explain myself properly.

In terms of having numerous objects to keep track of, I am pretty sure blender has no problem handling 100+ objects; I was speaking from the point of view of me - the user - managing all those objects - each window or door element needs to have its own "opening" object which participates in the boolean operation with the "wall" object on which it is hosted, and a typical Arhcitectural project consists of multiple types of windows and doors (with different dimensions).

I understand your point about non-manifold shapes and the challenges it can create. Care could be taken by the user to avoid non-manifold geometry. This is more or less what I am doing by having two objects representing my windows : (1) window object['detailed window mesh model'] (2) window opening object ['simple manifold cube mesh'] (as a boolean operand)(parented to the window object above for ease of manipulation)

My request for the boolean modifier to recognize vertex groups, is to help me combine the two objects into one single window object, but have my 'simple manifold cube mesh ' in a vertex group, then only that simple manifold cube mesh vertex group will participate in the boolean operation (if the vertex group option is activated). The vertex group option can be totally ignored by a user who does not need it.

I can and have used linked duplicates, like you suggested (and even collection instances where appropriate), and I will still continue to do so even if the feature I am requesting is developed. This request is targetted at a slightly different problem - having one object to represent both the 'window object' and the 'window opening' object.

The array modifier could also work(though it is less flexible for buildings that don't have repitiive window layouts such as in high rise buildings), but the issue arises again in that, I would have an array of windows, and then an array of window openings (for boolean).

All these could also be done without a boolean modifier, but I am requesting from an architectural design point of view, where one might need to reposition doors and windows several times in the design process, and finally (against the array workflow), it is necessary to be able to keep count (quantities) of objects, so having unique object data blocks (even if they are just empties for duplication) will make keeping count easier.