Apologies if this is a question that's asked a lot from beginners,
I am trying to connect two objects with flush, overlapping faces, and it seems that the union boolean modifier does not handle these "edge" cases. The resulting mesh has internal faces and other artifacts. But if I move the mesh, so the faces are not overlapping then the union works as intended. I briefly looked this up and if I understand correctly, the boolean modifier is not meant to handle my particular case?
Here is a picture to illustrate what I intend to do:
Is there a way to easily merge these two together in a way that results in a "clean" mesh?
I plan on merging many modular pieces together many time over, so any method that involves manual work is not very suitable for me; I'm hoping there is something that behaves like the boolean-union modifier, and can perform the operation on "flush" object intersections.