Intro to Unreal Engine 4

Demo of end product from tutorial
One
Caption for image two.
One
Caption for image three.
One
Caption for image four.
One
Caption for image five.
One
Two
Three
Four
Five

Links

GitHub

Engine

Unreal Engine 4

Project Type

Tutorial

Number of times run

Three

Approximate Audience

150

Overview

Every term as part of the uWaterloo Game Dev Club we run game development tutorials. In general, most people at the game dev club are Unity developers so there was not an Unreal Engine tutorial (since no one else had used it before!). As such, I wanted create a tutorial with a few goals in mind:

  • The tutorial had to be less than 3 hours long
  • The tutorial should minimize the amount of programming knowledge needed to appeal to a broad audience
  • The tutorial should touch as many parts of UE4 as possible so people know that they exist
  • Ideally, people should walk away with something playable
  • Ideally, people should be able to follow along
  • Ideally, the tutorial should only use built-in assets

Since traditionally the Unity tutorial run by members of the club involve making a 2D game (either a platformer or Angry Birds) I wanted to make something 3D to really contrast it.

Similar to what some of the intro UE4 tutorials provided by Epic do, I decided to start from scratch and build (an approximation) of one of the templates. Due to its simplicity, I elected to build a first-person shooter and to make a little game out of it, I though it would be cool to make a target practice race.

I was pleased with the end result and the tutorial was well received by those in attendance

The topics covered in the tutorial include:

  • Basic editor usage
  • Level prototyping using BSPs
  • Blueprint basics
  • Construction scripts
  • Inter-blueprint communication
  • UMG

On a finishing note, I will add that when I first ran this tutorial I had a bit of a misunderstanding on how cameras and player controllers worked and as such set it up slightly wrong. I have now adjusted my tutorials but have not had the chance to go back and update my documentation and example repository.