s-leger / archipack

Archipack for blender 2.79
https://blender-archipack.org
GNU General Public License v3.0
359 stars 49 forks source link

Wrong Boolean assignment with floors and assemblies #404

Closed hoverkraft closed 5 months ago

hoverkraft commented 5 months ago

Archipack version: 2.8.0

Blender version: 4.1.0

Os version: Fedora 39

Description of the issue:

When instancing a floor to an assembly the boolean modifier of the instanced floor is set to "Object", not to the "Holes" Collection. Doors, Windows etc. do not get cut on the instance. Changing the modifier to the "Holes" collection fixes the issue.

hoverkraft commented 5 months ago

Don't know if this is relateed: the Autoboolean has a couple of union booleans and with "fast" they fail, once I set them on "exact" it works. The problem showed up when placing doors, only the last one would have a working boolean.

s-leger commented 5 months ago

In order to create instance of a level, select your reference point and use "duplicate" tool, it should take care of the boolean automatically.

Blender's boolean "Fast" solver allow real-time modifications (where exact one is painfully slow), but comes with some limitations.

If neither of this is avoidable, you may switch the solver to "exact" by hand.

Archipack rely on 2 boolean operations, first one "auto merge" actually create a single object from your holes, then autoboolean use the result of auto merge as hole to actually cut the wall, so it is more reliable.

You should rely on support by e-mail support@blender-archipack.org as it is the fastest way to communicate.

hoverkraft commented 5 months ago

Got it! I Thanks for the pointers. I ended up making Level Collections and instancing those works really well and super performant. Archipak saved me a ton of time, it's a great addon, thank you for your work.