Introduction to Materials

Intro to Materials for Unreal Engine 4 - Page 1

Unreal uses a Physically Based Rendering (PBR) shading and lighting model to give artists maximum control over the look and feel of the scene. PBR is a concept as opposed to a strict set of rules. In short it allows for consistency of content in a variety of lighting scenarios giving maximum control.

PBR allows for some level of standardizations so that tools like Substance Painter and Designer can created maps that can be utilized on multiple engines. Even though it is known for creating photorealistic scenes it can be used on more sylized productions, as Monsters University used it as well.

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.

You should also download Crazy Bump or equivalent software (it is free) to create your various masks and normal maps. Photoshop is always useful but you can always use GIMP, Pixlr or any other free alternative.

1. Setting up Unreal & Github

We will be downloading a template project with some assets provided to us beforehand. We will get this set up and start working on materials in Unreal.


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.


Get Repository

If you are a student of mine in class you will have received an email of this same repository and will view the invitation and accept it. Now you can download the starter file I have created.


Download From GitHub If NOT a Student

If you are not part of the class you can login into github with your personal account and navigate to and in the top left corner press the fork button:


Clone New Repository

Click on the green Code button and select Open with GitHub Desktop then confirm that you will open in desktop then pick a directory and press Clone.


Open Intro To Materials Project

Double click the UE4 project IntroToMaterials.uproject to load it.


Load Room

The project should load up in the Room/Level Basic Materials. It should look like:


Build Lighting

You will also most likely see a dark room that has not been lit. You should probably hit the Build button and wait for the lighting to build for the level.


6 Rooms

Look at the World Outliner on the top right of the screen and you will see Room Construction folder with the walls and floor. We also have 6 room folders that we will use to create materials in all rooms in this level.


First Person Character Controller

I have also added a first person Character for you to control and possess during the game. Go to Settings | Project_Settings to see the controls.


Project Settings Input Mapping

Now select Input and expand Action Mappings and Axis Mappings. This shows you that we have implemented a mouse looking around, player movement and jumping. If you press the triangles you can see the keys that are assigned.


Two Blueprints

Go to the bottom left and open the Source Panel and click on the Blueprints folder. You will see two Blueprints. One called BP_Gamemode and the other called BP_PlayerCharacter. The gamemode blueprint loads the BP_PlayerCharacter when the level is run so that you control a first person character.


GameMode & Default Levels

Lets go back back to Settings | Project_Settings and select Maps and Modes. You will see that the reason the game booted up in this map was because it was set here previously. Also we are not loading the BP_Gamemode as the default gamemode. We can set this here in the project settings or in the World Outliner. We will see later that it is set in the latter.


Fill in Description

Now go to Description and fill in the various modules with the information that you want that you think is important.


World Settings

Now go into Settings | World Settings and expand Game Mode. This is overrides the settings that are in project settings for this one level. This is selecting our custom BP for Game Mode and Default Pawn. The Default Pawn is the game object that we are controlling in game. You will see all of these blueprints running and added to the scene when running the game.


Run Game and Walk Around

OK, that's enough for setup, now run the game and walk around using the W A S D or Arrow keys for movement, Space Bar for jumping and Mouse for looking around. You should be able to walk around the various rooms and see that they are all titled.


Set up Source Control

Lets attach this repository to source control. There is an existing .git folder so this will be quicker. Press Accept Settings and then Submit the chnages with a commit message and press Submit. You should not get any error messages.