Introduction to Level Design

Intro to Level Design for Unreal Engine 4 - Page 1

Unreal gives you access to brushes where you can craft the roughing out of a level that is sometimes refered to as "gray blocking". This is where a designer lays out the level and figures out the gameplay before it goes to an art team to properly model and create assets.

Otter dancing with a fish

You will need to install the latest version of UE4 4.25.x by downloading the Epic Games Launcher. You will also need a GitHub account which is free to sign up for as we will be using version control. You will also need a mac or PC that is powerful enough to run unreal. If you are on a PC you will have to download and install git (on a mac it may prompt you to install git as well but you can do it through the terminal). We will also install Github Desktop as it provides a GUI interface so you don't have to worry about command line. Once git is installed you will also need to download and install the Git LFS (Large File System) as well for both PC and mac. For this simple introduction that is all that is needed.

Lets make sure you can see hidden folders. On the PC follow these Windows 10 Turn on Hidden Folders directions. On the Mac it is a bit more involved so go and turn on hidden folders on Mac.

1. Setting up Unreal & Github

We will be working in a third person game and will use the UE4 default and alter it for our needs. This will give us all we need for a character that we can control.


Install all Software

If you have not installed the required software go and add Epic Games Launcher, git (PC only), Github Desktop, Git LFS (Large File System) on your mac or PC. Make sure you have a valid GitHub account. Make sure it has a 4.25 in front of the version (4.25.x) so that we know this walk through will be compatible with your version of Unreal.


Start Unreal Engine

Run the Epic Games Launcher and Press Launch button to go to the Select or Create New Project screen


Create New Project

You can pick from different starting templates with Games, Film/TV, Architecture and Design as options. Lets start by selecting Games and then press the Next button.


Select Template

Unreal then allows us to have various starting point template for different genres of games. We will be looking at these in later tutorials. The sidescroller template would be interesting but it is for 2 dimensional movement and we want a fully navigatable 3-D level. For now lets just start with a Third Person template then press the Next button.


Select Project Settings

This now takes you to the Project Settings screen. The first settings on the top left is set to Blueprints. You can select between C++ and Blueprint. Since we will not be doing any C++ programming in this exercise we will leave it with Blueprint. I am leaving the quality settings to Maximum Quality as my computer is powerful enough to handle it. If you feel your computer is not at a gaming level select a lower quality. We will leave Raytracing off as we will not be using it at the moment. We set the paltform to Desktop as we will be on a PC or Mac playing the game and not on a game console or on mobile. Then you can load up the project with some basic content and we will NOT be loading this to keep our project file sizes down.

Select a folder to put it in (I suggest Documents/github/ and then assign a project name and I am calling it IntroLevelDesign. Press the Create Project button to start the new project.

Version Control

Version control saves lots of space on our laptops so that all project data can be safely backed up and saved on the server but we only need the assets we are currently using on our local hard drive. It is also good practice as most game projects use some form of version control


Turn on Source Control

In the editor select the Edit menu item then from the drop down menu select Editor Preferences. Select Loading & Saving tab from the left hand side. Go to Source Control and set Prompt for Checkout on Asset Modification to true and Add New Files when Modified to true. Leave the other two settings at false and accept their default editor to deal with merge conflicts.


Activate Version Control

We will turn this folder into a git repository. We can do this inside of Unreal. Right click on the bottom left in the Content Browser the icon next to Filters. This opens up a menu that shows your Content folder. Right click on the folder and select Connect to Source Control. Then in the menu select Git (beta version) as the source control you will be using. Make sure you add a .gitignore file, a file, a .gitattributes for Git LFS file and finally Make the initial Git Commit file.


Create new GitHub Project

If you are in my class you will have an invite to a project. Otherwise you can just go to GitHub and create a new project and call it Intro-To-Level-Design. This will take you to a screen with a link to the repository. Now we just need to include our Unreal project in this which we will do next.


Paste Directory in Unreal

Paste the directory for your GitHub project into the Url of the remote server 'origin' in Unreal. Select the Initialize Project with Git button. Then press the Accept Settings button.


Confirm Git is Installed

We always need to test our work. We never assume that software will do what we expect it to do and always need to confirm. Go to the folder that you created the project and with hidden folders turned on you should see a .git folder. If you do git is installed properly.


Push to GitHub

Press the Source Control button and press Submit to Source Control. It should have nothing to submit as if you selected the button to commit changes when the repository was commited. Open up GitHub Desktop and select File | Add local repository. Select the Choose button and navigate to the folder with your project. Then press Select Folder. You get another pop up and select Initialize Git LFS. Finally press the Publish Branch button. Go back to GitHub website and press refresh. You should now see all the files update.


Edit File

Edit the file on GitHub and enter your name as the author and a brief description of the project. I added Level design for third person adventure game.


Add LICENSE file

Go to GitHub and press the Add file button and select Create new file. Type in LICENSE. A button pops up on the right and press Choose a license template. I recommend the MIT License. Then you press Review and submit. Go back to the main page and select Compare and pull request. Press the Create pull request button. Select Merge pull request and go back to the main page. The LICENSE file should now show up. Now this is on the server so lets bring it onto our laptop. Go to GitHub deskto and press Fetch Origin to get the latest.


Add Project Information

Download a thumbnail that you can use on this project Intro Thumbnail. Press the Settings button and select Project Settings. Make sure you are in the Project Description tab and press the three dots in the About tab next to the thumbnail and attach the thumbnail you just downloaded. Enter a Description, Project Name. Put your name as the Publisher | Company Name and you can add your email in Support Contact. Add the Project Displayed Title and Project Debug Title Info.

Go back to the game screen, press Source Control add a message and press submit. Open up GitHub desktop and push to the server.


Play Template Level

Press play and lets see what we get? Run around using the UP | DOWN | LEFT | RIGHT keys on the keyboard. Press Space Bar to jump. Get used to teh controls - we will make some changes in the next section.