When designing a level one should sketch out a map and label features. We will create this level using the map below
Right-Click on the map above
Name it level-floorplan.png
Add a Sprite3D as a child
Set the level-floorplan.png
In the SpriteBase3D property
Change the Axis to Y-Axis
Raise the Y position of the
map Transform up so it is always
Delete all the children of CSGCombiner3D
Move it to Align with the Spawn room
Use the circular orange handles to
make it roughly fit the map room size
Make it a child of CSGCombiner3D
room on the map to the left of Spawn
Use the handles to resize it
Repeat this process for all of the rooms
Position the first corridor
Position the second corridor
Position the third corridor
Between Room 3 and courtyard
This corridor is on floor 2
So raise y transform to 2.75m
Position it between Courtyard and Room 2
To create second floors we will add blocks and cut parts away using the Operation mode of CSGBox
Move it out of the Room hierarchy
So it is a child of MainLevel
Because this is the 2nd floor
Make it half the height of
Turn Flip Faces off to make it solid
Set the Y transform to 1.5
To cut away half the floor we just made
Set Operation to Subtraction
Use the Orange Handles to fit it.
To carve out the corridor
Make it a child of Overhang2
To create the rest of the level