# Trying to intersect two tunnels

I'm trying to create sewer tunnels for game development and I cant seem to figure out how to make an intersection.

We've tried boolean but it doesnt seem to want to work properly nor cutting... Does anyone have any suggestions?

There are several ways to do it, here is one:

• Create your tunnel section, create an empty close to it, give your tunnel a Mirror modifier with the empty as Mirror Object, enable Axis, Bisect and Flip on the right axis (here X):

• Rotate your empty 45° on the Z axis and move it so that the tunnel and its mirrored version cross each other:

• Apply the modifier, go in Edit mode, select all, in the header menu > Mesh > Symmetrize, and in the Operator box choose the right axis:

• Symmetrize in the other axis:

• Thanks for the reply! I'm having difficulties following the first step, I'm an absolute beginner.... I tried following the instructions but there's no mirrored version that appears.
– Nick
Sep 9, 2020 at 11:00
• please share your file once you've created an empty and given your tunnel a Mirror modifier, use blend-exchange.giantcowfilms.com Sep 9, 2020 at 11:14
• Yes because, as the object is aligned with the X axis, if you choose the X axis in the Mirror modifier, the mirrored object will overlap the original, so just rotate the empty and you will see it Sep 9, 2020 at 11:56
• @Nxdhin2005, thanks ;) there are several ways to do it though Sep 30, 2020 at 11:27

Alternative approach, that allow to have several tunnel entries:

It uses two modifiers:

• Shrinkwrap on a mesh with two planes at given angle (here 360 / 6 = 60 degrees).

• Array modifier with amount of 6 and centered on a empty rotated by 60 degrees.

Shrinkwrap:

Uses 'project', 'on surface', along the 'Y' axis in my case, to the target 'plane', and using a vertex group: only the parts you want to project are linked to this group. The plane object is in fact two planes disposed at the wanted angle.

Array modifier:

6 occurences as we said above, using 'object offset', with an empty as object, merge options set on. The empty is at the center of the resulting shape and rotated 60 degees.

All this will work if the tunnel is symetrical and well centered.

• That's a really cool idea for an intersection! I'll probably use it for more options of generation :) thank you!
– Nick
Sep 9, 2020 at 13:17

As the others have noted .. many approaches are possible, partly depending on how non-destructive you need to be (that is, how many steps you want to remain 'live', reversible or adjustable through modifiers, before settling the model)

It often saves some steps, or some awkward moves, to start in the flat, with a simple profile:

Z floor-roof, X across the tunnel, Y along it..

1. Looking down Y, Create the profile... here, a 16-circle, half deleted, bottom vertices EZ extruded down in Z, F connected with an edge, and then the straight sections (right-click menu) > Subdivided. the middle vertex of the bottom straight is dragged down a touch under O proportional editing, set to spherical, to make the gulley.
2. Looking down Z, The profile is EY extruded to make a section of tunnel
3. From what will be the apex of the vault, K with C to constrain and Z to cut through, cut the miter, and X discard the excess faces.
4. All the boundary edges, and the edges of the gulley are CtrlE menu > given an Edge Bevel weight

1. In Edit mode the whole thing is ShiftDRZ45 duplicated and rotated. ShiftR repeats the move twice more.
2. M > By Distance merge the coincident vertices, welding the parts into 1.

Back in Object mode, the object is given: a Solidify modifier, set to mode 'Complex' by 'Contraints', then a Bevel modifier, by 'Weight', then a Subdivision Surface modifier.

Can do it using a mirror modifier this way:

It is mirrored in X and Y using an empty rotated 45 degrees so that the mirror is done on the sides (the diagonals of the inner region, between the mirrored parts).

The clipping option must be on.

Now grab Y (in my case) until the extremity reaches the center, like this:

Then scale with origin set on 3D cursor by 2 except on Z. SshiftZ2. Two because the width of the tunnel is two in this example:

All should be connected correctly:

• Thanks for the reply :D I'm going to try moon boot's method first though if that's ok
– Nick
Sep 9, 2020 at 11:47
• @Nick, sure he was first to answer Sep 9, 2020 at 11:50