Geometry tools (a.k.a. BSP) in Unreal Engine are a quick way to create a shell for our level. Geometry tools are convenient for testing out map ideas and making sure the level is fun to play. This is usually done before beautifying the level. You will:
Navigate the camera through the level
Add and subtract parts of the level using Geometry tools
Add and manipulate meshes in the level
We have created a level to help familiarize you with various elements that affect a level's gameplay. Open LevelTutorialMap to see what we have prepared:
Video 1 : Open a map that demonstrates gameplay elements in action:
Click on File → Open Level.
Search for levelTutorialMap and double-click to open it. Note: Selecting Content sometimes shows no items. Select Restricted Assets instead.
To save the map as your own, use File → Save As.
In order for the game's menus to discover the map you must:
Save the map into /Content/RestrictedAssets/Maps/...
Prefix any Deathmatch maps with DM-
Prefix any CTF maps (Note: this tutorial is for designing a CTF map) with CTF-
Navigate the view to the missing bridge. It is marked by hazard stripes.
Under the Place mode tab (upper left corner) select the BSP subtab
Drag a Box from the BSP subtab onto one of the hazard stripes. This creates an additive BSP Brush, which adds geometry to the world.
The next step is to move the box (BSP Brush) into position to start bridging the gap. You do this by pressing W to switch to the translation gizmo; drag the arrows on the cube to move it around in your map until it is lined up against the hazard stripes.
As the BSP Brush (box) is not wide enough, you’ll need to stretch it to create a wider box. Switch into Geometry Editing Mode by selecting the trimmed box icon from the Modes window or by pressing SHIFT + 5. You will notice the Modes panel change when you are in Geometry editing mode. Selected BSP shapes are blue when their geometry is being edited.
In Geometry Editing Mode, selecting a BSP surface highlights the surface in orange. The transform gizmo will appear in the center of the selected (orange) surface. Left clicking and dragging a specific axis (it turns yellow), allows you to resize the cube surface larger or smaller along that axis.
Reshape the cube until it makes for an appropriate bridge.
Notice that the BSP box is a transparent blue. To commit the changes you have made, find the Build → Build Geometry (Current Level) on the toolbar. The default shortcut is Ctrl+Shift+B. Note: the build process may report errors that are not serious.
You should now see a solid bridge where there was once a gap between hazard stripes.
In the creative modding process, you will want to delete and correct ideas that didn't work. Quick ways to fix mistakes include:
UNDO by pressing CTRL+Z. UNDO can require a Build Geometry (shortcut: CRTL+SHT+B) instruction to update the level and see the action has been reversed.
DELETE by selecting a BSP Brush and hitting delete will delete the BSP Brush. To see the object removed requires you to Build Geometry afterwards to update the level.
To completely start over, simply reload the tutorial map and begin anew.
Subtract a Tunnel
Our bridge leads to tower wall. We can create a tunnel through the tower by subtracting a BSP shape from it. This is a powerful technique for iterating on a map's gameplay; a level designer can move an entire corridor by adjusting the position of a subtractive brush.
Video 4 : Subtracting a tunnel through the tower:
Begin by placing another box. Select Place from the tool mode panel, and switch to the BSP sub tab.
Drag and drop a BSP box primitive from the Browser into the map viewport to add it to your world.
Drag the arrows on the cube to move it around in your map until it is lined up against the wall near the "hazard" stripes.
Note: you can click on the cube to re-select it if you want to adjust its placement later.
Switch to Geometry Editing, and use the method outlined earlier to reshape your box brush until it is large enough to cut a hole in the tower and open the path to the powerup.
In the Details panel for your BSP box, search for the dropdown next to Brush Type, and switch it from Additive (blue) to Subtractive (red). Instead of adding geometry, this BSP box will now cut holes in existing geometry.
Use Build→Build Geometry (Current Level) or press Ctrl+Shift+B to enact your BSP changes.
For the sake of speed, we have been building only Geometry; this does not update lighting, navigation, or other engine systems. Now that we completed our bridge and tunnel, let's update any stale data.
Video 5 : Perform a full build.
Press Build on the toolbar, this may take some time to complete
Once finished, look around. Notice that the lighting has now been updated based on the geometry changes
Now that the bridge is complete, make sure it is usable. Press Play on the toolbar to test out the bridge by running over it
Add Decorative Details
Geometry editing is great for quickly trying out ideas, but it does not allow for finer detail. Detailed items are added on top of BSP to beautify the level. Let us add some decoration to the bridge.
Video 6: Add bridge decoration.
Summon the Content Browser by pressing the Content button on the tool bar
In the Content Browser, select the Content folder. Then search for SM_TrimHollow
Drag and drop the SM_TrimHollowStatic Mesh from the Content Browser to the map viewport. Note: you can click on the railing to re-select it if you want to adjust its placement later.
Align the trim to the edge of the bridge:
When an object is selected, pressing Space cycles through different gizmo modes:
translation (gizmo with arrows)
rotation (gizmo with arcs)
scaling (gizmo with boxes)
Use the different gizmo to manipulate the trim until it lines up with the edge of the bridge
Instead of placing a new item every time, it is often useful to duplicate items that are already in the level. Let us use duplication to decorate the other side of the bridge.
Video 7 : Decorate the other side of the bridge.
Select the trim mesh we just added
Use SPACE to cycle to the translation gizmo
Hold ALT and drag one of the translation arrows. Notice that we are duplicating the mesh in the process
Using the gizmo, align the mesh to the other side of the bridge
The bridge should now have trim on both sides
Build and Test
It's time to test our changes. After making changes it is often tedious to start at the beginning of the level. Unreal Engine provides a Play from here option in the Viewport's context menu to save some time.
Video 8 : Final testing.
Perform a full build by pressing Build on the toolbar. Wait for completion
Once the build is done, right click on a spot near the bridge and select Play from here
Notice that you spawn exactly where you clicked
Wrap up by checking out the bridge we have constructed
If you would like to go beyond this tutorial, explore by:
Adding more usual geometry like a cylinder
Explore changing BSP into an irregular shape by dragging on vertexes or edges
Continue experimenting with the gizmos (translation (W), rotation (E), and scale (R))