In this introductory game design course, I will be guiding you step by step through the construction of a simple shooting gallery game using the Unreal Engine: THE premier free to download gaming engine. (AND the SAME engine used to build "Fortnite").
In this introductory game design course, I will be guiding you step by step through the construction of a simple shooting gallery game using the Unreal Engine: THE premier free to download gaming engine. (AND the SAME engine used to build "Fortnite").
This course contains over 90+ fun-to-follow video lessons. Things learned in this course include:
How to setup and create a project in the Unreal Engine
How to add on (free. ) content packs from the Epic Games Marketplace
How to navigate and use essential tools available in the Unreal Engine such as the Level Editor, Particle Editor, Sound Editor, etc.
How to create a basic game design document
How to create a graybox (rough draft) level
How to dress up (make pretty. ) levels using static meshes, materials, particles, sounds, and lights.
How to create interactive objects using Blueprint Scripting (NO CODING ) including...
How to create Variables
How to create Functions
How to use Event, Flow Control, and Timeline nodes
How to organize your blueprints and scripts
How to create interactive menus
How to create a game HUD
How to add rain to your level
How to create your own customized projectile
How to package a project
And more.
With the knowledge gained in these video lessons, you'll be armed with the necessary skills to start building your OWN gaming creations (WITHOUT any programming knowledge needed. )
In this quick video we'll talk about how the course is structured - covering which videos are ESSENTIAL for completion of our Shooting Gallery style project and which videos are OPTIONAL (to explain core concepts to beginners).
THIS LESSON TEACHES HOW TO...
Navigate the Course
Unreal Engine 4 is FREE! This video shows you where to initiate the download of the Epic Games Launcher (so that you can THEN install Unreal Engine 4 on your computer).
THIS LESSON TEACHES HOW TO...
Download the Epic Games Launcher
Install Unreal Engine 4
In this video we'll create our very first project. We'll use the First Person Template to help us get started.
THIS LESSON TEACHES HOW TO...
Create a Project
In this video we'll create a directory of folders inside of the Content Browser for the purpose of organizing our course assets. We'll finish by creating a new Level asset and put it into one of our created folders.
THIS LESSON TEACHES HOW TO...
Create Folders in the Content Browser
Create a Level
ASSETS ADDED / CREATED...
Level: Level_01
In this video we'll begin by taking an overview of Unreal Engine 4's Level Editor. This is where you'll be spending much of your time while making your gaming projects!
This video is a continuation of "Part 1." We'll complete our discussion of the Level Editor here.
In this video we'll learn about the Content Browser. This is where you can access all the content (meshes, sound effects, particle effects, etc.) you'll use to build a project.
This video is a continuation of "Part 1." We'll complete our discussion of the Content Browser here.
In this video we'll be exploring how to navigate through your game world using mouse inputs.
In this video you'll learn how to navigate through your game world using some keyboard inputs.
In this video you'll learn how to navigate around an object in your game world using "Maya" style controls.
In this video you'll learn about the different Orthographic Views available to you. These views are excellent to use when pinpoint object placement is desired or wanting to measure the distance between things.
In this video you'll learn about a few of the different View Modes available in each view port as well as other things you can turn on or off (such as viewing collision in your game or the world grid).
In this video we'll discuss how to place actors in your level.
In this video we'll discuss how to move actors in your level.
In this video we'll discuss how to rotate actors in your level.
In this video we'll discuss how to scale actors in your level.
In this video we'll take a quick look at what the overall design of our game will be. This discussion will include Play Mechanics, Level Hazards, Game Objectives, Game Rules, and an overview of our Map Design.
THIS LESSON TEACHES HOW TO...
Create a Basic Game Design Document
In this video we'll discuss what Player Metrics are and why a designer should edit these BEFORE starting to build out a level.
In this video we'll dive into Unreal Engine 4 and modify a few Player and Projectile Metrics.
THIS LESSON TEACHES HOW TO...
Edit Player Metrics
Edit Projectile Metrics
In this video we'll talk about what "Geometry" is in Unreal Engine 4 and what it's used for.
In this video we'll talk about how Additive & Subtractive Brushes are accessed and interact with one another.
THIS LESSON TEACHES HOW TO...
Add Geometry
Subtract Geometry
Change Geometry Ordering
In this video we'll explore the different settings available for each of the default geometric brush types available in Unreal Engine 4.
THIS LESSON TEACHES HOW TO...
Edit Brush Specific Settings
In this video we'll talk about the numerous ways we can edit geometric brushes in Geometry Edit Mode.
THIS LESSON TEACHES HOW TO...
Move a Geometric Face, Line or Vertex
Extrude Faces
Split Lines
Weld Vertices
Delete & Create Faces
Lathe
In this video we'll discuss what the "Grid" is in UE4 and how to use it as a guide for placing and moving actors.
THIS LESSON TEACHES HOW TO...
Show / Hide the Grid
Turn Grid Snap Settings On / Off
Set Grid Snap Settings
Use the Measure Tool
Change an Actor Pivot Point
Snap an Actor to the Grid via Hotkey (Ctrl + End)
In this video we'll explore various building efficiency tips and tricks.
THIS LESSON TEACHES HOW TO...
Duplicate Objects
Select Multiple Objects
Group / Ungroup Objects
Attach / Detach Objects
In this video we'll begin to Graybox our level! We'll start by taking a look at our map design and getting the floor slabs in place first.
THIS LESSON TEACHES HOW TO...
Use Geometry to Graybox a Level
This video picks up where we left off in Level Layout #1. Here, we'll finish laying out the floor slabs to give us a sense as to how big our level is and how rapidly our player can move through it from beginning to end.
THIS LESSON TEACHES HOW TO...
Use Geometry to Graybox a Level
In this video we'll use Geometry to build out the "sides" of our Graybox level. These large boxes will represent building structures.
In this video we'll place some placeholder assets around our level to represent where we'd like to place things like pickups, hazards, interactive doors, and moving platforms in our level. Additionally, we'll show off what Blocking Volume and a Kill Z Volume can do for you.
THIS LESSON TEACHES HOW TO...
Place / Use a Blocking Volume
Place / Use a Kill Z Volume
In this video we'll cover where to locate (free!) assets in the Marketplace and how to add them to your project.
THIS LESSON TEACHES HOW TO...
Add Marketplace Assets to a Project
ASSETS ADDED / CREATED...
Asset Pack: Soul City
In this video we'll talk about how to work with Materials when dressing your level.
THIS LESSON TEACHES HOW TO...
Edit Material Settings on Geometry
Make a 2-Sided Material
In this video we'll talk about how to work with Static Meshes when dressing your level.
THIS LESSON TEACHES HOW TO...
Open the Static Mesh Editor
Edit a Static Mesh's Collision Shape
Edit a Static Mesh's Collision Responses
Set a Static Mesh to Simulate Physics
In this video we'll talk about how to work with Particles when dressing your level.
THIS LESSON TEACHES HOW TO...
Scale a Particle
Set a Particle's Custom Time Dilation
Attach a Particle to another Actor
Toggle Translucent Selection On / Off
In this video we'll talk about how to work with Sounds when dressing your level.
THIS LESSON TEACHES HOW TO...
Import a Sound File
Add Ambient Sound Actors
Edit Basic Sound Properties
Attach an Ambient Sound to another Actor
Set Ambient Sound to Auto Activate (or not)
In this video we'll talk about how to work with Lights when dressing your level.
THIS LESSON TEACHES HOW TO...
Add Point, Spot, Rect, Directional, and Sky Lights
Edit Basic Light Properties
Build Lighting
Place a Lightmass Importance Volume
In this video we'll talk about the Sky Sphere Blueprint and how it can interact with our Directional Light Actor to create scenes with differing times of day.
THIS LESSON TEACHES HOW TO...
Create a Night (or Day Time!) scene
In this video we'll discuss what Blueprints are, the different Blueprint Types, and take a quick look at the Blueprint Editor.
In this video we'll create an Actor Blueprint and add all the necessary Components for a Moving Platform.
THIS LESSON TEACHES HOW TO...
How to Create an Actor Blueprint
How to Add / Edit Blueprint Components
ASSETS ADDED / CREATED...
Blueprint: BP_MovingPlatform
In this video we'll create an Actor Blueprint and add all the necessary Components for an interactive Door.
THIS LESSON TEACHES HOW TO...
How to Create an Actor Blueprint
How to Add / Edit Blueprint Components
ASSETS ADDED / CREATED...
Blueprint: BP_Door
In this video we'll create an Actor Blueprint and add all the necessary Components for a Steam Jet hazard.
THIS LESSON TEACHES HOW TO...
How to Create an Actor Blueprint
How to Add / Edit Blueprint Components
ASSETS ADDED / CREATED...
Blueprint: BP_Steam_Jet
In this video we'll create an Actor Blueprint and add all the necessary Components for a Fan hazard.
THIS LESSON TEACHES HOW TO...
How to Create an Actor Blueprint
How to Add / Edit Blueprint Components
ASSETS ADDED / CREATED...
Blueprint: BP_Fan
In this video we'll create an Actor Blueprint and add all the necessary Components for a Health Pickup.
THIS LESSON TEACHES HOW TO...
How to Create an Actor Blueprint
How to Add / Edit Blueprint Components
ASSETS ADDED / CREATED...
Blueprint: BP_Health_Pickup
In this video we'll create an Actor Blueprint and add all the necessary Components for a shootable Target. All other targets will be derived (become children of) this Blueprint.
THIS LESSON TEACHES HOW TO...
How to Create an Actor Blueprint
How to Add / Edit Blueprint Components
ASSETS ADDED / CREATED...
Blueprint: BP_Target_Parent
In this video we'll create Children and Sibling Blueprints that derive from our Parent Target Blueprint. Our Point Target Blueprints will come in different sizes and award differing amounts of points when shot.
THIS LESSON TEACHES HOW TO...
How to Create a Child Blueprint
How to Create Sibling Blueprints
How to Edit Blueprint Components
ASSETS ADDED / CREATED...
Blueprint: BP_Target_100
Blueprint: BP_Target_500
Blueprint: BP_Target_1000
In this video we'll create some Sibling Blueprints that, when hit, result in special bonuses (either more time or a temporary speed boost).
THIS LESSON TEACHES HOW TO...
How to Create Sibling Blueprints
How to Edit Blueprint Components
ASSETS ADDED / CREATED...
Blueprint: BP_Target_+Speed
Blueprint: BP_Target_+Time
In this video we'll create a special type of Blueprint capable of spawning X number fof targets for X amount of seconds when a player overlaps a Trigger Volume.
THIS LESSON TEACHES HOW TO...
How to Create Sibling Blueprints
How to Edit Blueprint Components
ASSETS ADDED / CREATED...
Blueprint: BP_Target_SetSpawner
In this video we'll create a Blueprint used to detect when a player has reached the end of a level.
THIS LESSON TEACHES HOW TO...
How to Create Sibling Blueprints
How to Edit Blueprint Components
ASSETS ADDED / CREATED...
Blueprint: BP_LevelComplete
In this video we'll talk about what Blueprint Scripting is and how it works.
In this video we'll discuss what Events are and how they're using in scripting.
In this video we'll discuss what Functions are, give some example uses, and even show how to create them.
In this video we'll talk about what Variables are, how they are used, and why they are important. We will be making heavy use of variables in this project! This is an important lesson to understand.
In this continuation video we'll cover many essential concepts involving Variables.
THIS LESSON TEACHES HOW TO...
Set Variables
Categorize Variables
Organize Variables
Make a Variable Publicly Editable
Specify a Private Variable
Delete a Variable
Rename a Variable
Change a Variable Type
In this video we'll talk about what "Flow Control" nodes are in Blueprint Scripting and how they can be utilized in making games.
In this video we'll add Variables and create script needed to make a moving platform.
THIS LESSON TEACHES HOW TO...
Create Variables
Create a Timeline
Write Blueprint Script
ASSETS ADDED / CREATED...
Variable (Vector): StartLocale
Variable (Vector): EndLocale
In this video we'll add Variables and create the Script needed to make an interactive Door.
THIS LESSON TEACHES HOW TO...
Create Variables
Create a Timeline
Write Blueprint Script
ASSETS ADDED / CREATED...
Variable (Bool): CanOpenDoor?
Variable (Bool): HasDoorBeenOpened?
In this video we'll add Variables, make a Function, and create the Script needed to make a Health Pickup.
THIS LESSON TEACHES HOW TO...
Create Variables
Create a Function
ASSETS ADDED / CREATED...
Variable (Float): HealthMax
Variable (Float): HealthCurrent
Variable (Float): Health%
Function: UpdateHealth
In this video we'll add a Variable and create the Script needed to make a Steam Jet hazard.
THIS LESSON TEACHES HOW TO...
Create a Variable
Create Blueprint Script
ASSETS ADDED / CREATED...
Variable (Float): PlayerHeathToSubtract
In this video we'll add Variables and create the Script needed to make a spinning Fan hazard.
THIS LESSON TEACHES HOW TO...
Create a Variable
Create Blueprint Script
ASSETS ADDED / CREATED...
Variable (Float): PlayerHeathToSubtract
Variable (Rotator): RotationRate
In this video we'll add Variables and create a Script for a shootable Target. All other targets will be derived (become children of) this Blueprint.
THIS LESSON TEACHES HOW TO...
Create Variables
Create Blueprint Script
ASSETS ADDED / CREATED...
Variable (Integer): Points
Variable (Float): Lifetime
Variable (Bool): IsStandAloneTarget?
In this video we'll continue where we left off in the previous video. This one involves creating the Script for the spawning of a single target when our player overlaps a trigger volume.
THIS LESSON TEACHES HOW TO...
Create a Timeline
Create Blueprint Script
In this video we'll continue to create the Script needed for our shootable Targets. Specifically we'll create Script to spawn a target (if part of a set spawner) and also destroy the target (when shot).
THIS LESSON TEACHES HOW TO...
Create Blueprint Script
In this video we'll add a Variable and create the Script needed to give our First Person Character a speed boost if they shoot a "Speed Boost" Target.
THIS LESSON TEACHES HOW TO...
Create a Variable
Create a Custom Event
Create Blueprint Script
ASSETS ADDED / CREATED...
Variable (Float): SpeedBoostAdditive
Custom Event: Speed Boost
In this video we'll add the Variables and create the Script needed to spawn "X" number of targets when our First Person Character overlaps this Blueprint!
THIS LESSON TEACHES HOW TO...
Create Instance Editable Variables
Create Blueprint Script
ASSETS ADDED / CREATED...
Variable (Float): Target_01_Delay
Variable (Float): Target_02_Delay
Variable (Float): Target_03_Delay
Variable (Float): Target_04_Delay
Variable (Float): Target_05_Delay
Variable (Actor Class): Target_01
Variable (Actor Class): Target_02
Variable (Actor Class): Target_03
Variable (Actor Class): Target_04
Variable (Actor Class): Target_05
This video is a continuation of part 1. In this one we'll experiment with what our Target Spawner can do and recap how it all works.
In this video we'll discuss what a Widget Blueprint is, what it's used for and give an overview of how they're constructed.
THIS LESSON TEACHES HOW TO...
Create a Widget Blueprint
Navigate the Widget Blueprint Interface
ASSETS ADDED / CREATED...
Widget Blueprint: WBP_Overview
In this video we'll create a Widget Blueprint to display our in-game HUD information. It'll include score, a timer, and a health meter.
THIS LESSON TEACHES HOW TO...
Create a Widget Blueprint
Layout an In-Game HUD
ASSETS ADDED / CREATED...
Widget Blueprint: WBP_HUD
In this video we'll create a Widget Blueprint for an interactive Start Menu. From it, we'll be able to select a level and launch the game.
THIS LESSON TEACHES HOW TO...
Create a Widget Blueprint
Layout an Interactive Start Menu
ASSETS ADDED / CREATED...
Widget Blueprint: WBP_StartMenu
In this video we'll create a Widget Blueprint for an interactive Level Complete Menu. From it, we'll be able to quit or restart the game.
THIS LESSON TEACHES HOW TO...
Create a Widget Blueprint
Layout an Interactive Level Complete Menu
ASSETS ADDED / CREATED...
Widget Blueprint: WBP_LevelCompleteMenu
In this video we'll create a Widget Blueprint for an interactive Game Over Menu. From it, we'll be able to quit or restart the game.
THIS LESSON TEACHES HOW TO...
Duplicate & Edit a Widget Blueprint
ASSETS ADDED / CREATED...
Widget Blueprint: WBP_GameOverMenu
In this video we'll create a Widget Blueprint for an interactive Pause Menu. From it, we'll be able to quit, restart, or resume the game.
THIS LESSON TEACHES HOW TO...
Duplicate & Edit a Widget Blueprint
ASSETS ADDED / CREATED...
Widget Blueprint: WBP_PauseMenu
In this video we'll talk about some special blueprints present in all projects in Unreal Engine 4 known as Framework Blueprints. These blueprints are utilized to determine things like what rules our game will have, which character we'll use, etc.
THIS LESSON TEACHES HOW TO...
Locate Framework Blueprints in the Project Settings
In this video we'll create a Start Menu Level with its own Game Mode Blueprint. In doing so, we can present our WBP_StartMenu in proper UE4 fashion and launch a level.
THIS LESSON TEACHES HOW TO...
Create a New Level
Create a Game Mode Blueprint
Set an Editor Startup Default Map
Write Blueprint Script
ASSETS ADDED / CREATED...
Level: StartMenu
Game Mode Blueprint: BP_GameMode_StartMenu
In this video we'll create our project's primary Game Mode Blueprint. Inside of it, we'll write script to make our WBP_HUD appear on screen!
THIS LESSON TEACHES HOW TO...
Create a Game Mode Blueprint
Set a Project's Game Mode Blueprint
Write Blueprint Script
ASSETS ADDED / CREATED...
Game Mode Blueprint: BP_GameMode_Gameplay
In this video we'll add the Variables and Functions necessary to bind our HUD widgets to relevant data such as as score, health, and time.
THIS LESSON TEACHES HOW TO...
Create Variables
Create Functions
Bind Functions to Widgets
ASSETS ADDED / CREATED...
Variable (Integer): GamePoints
Variable (Integer): GameTimeLimit
Function: GetScore
Function: GetHealth
Function: GetTimeLimit
In this video we'll add an Audio Component inside of BP_GameMode_Gameplay and then write script in order to play music at the start of our game.
THIS LESSON TEACHES HOW TO...
Add a Blueprint Component
Write Blueprint Script
ASSETS ADDED / CREATED...
Blueprint Component (Audio): Music_Game
In this video we'll be adding a Function into BP_GameMode_Gameplay to add points to our score when called. We'll then write a small bit of script to call this function inside of BP_Target_Parent whenever a target is destroyed.
THIS LESSON TEACHES HOW TO...
Create a Function
ASSETS ADDED / CREATED...
Function: Add Points
In this video we'll create a Game Instance Blueprint. This type of blueprint persists across an entire game session and won't reset the values of any variables it contains. Thus, it's an ideal choice for us to store information regarding what level we've selected to play.
THIS LESSON TEACHES HOW TO...
Create a Game Instance Blueprint
Create an Enumeration
Create a Variable
Set a Game Instance Blueprint in the Project Settings
ASSETS ADDED / CREATED...
Game Instance Blueprint: BP_GameInstance
Enumeration: E_LevelSelected
Variable (Enum): LevelSelected
In this video we'll create some Variables and add some script to make it so that our time limit displayed in game is accurate to whichever level the user has selected.
THIS LESSON TEACHES HOW TO...
Create Variables
Write Blueprint Script
ASSETS ADDED / CREATED...
Variable (Integer): Level_01_TimeLimit
Variable (Integer): Level_02_TimeLimit
Variable (Integer): Level_03_TimeLimit
In this video we'll create a Function and add more script in order have time decremented as we play.
THIS LESSON TEACHES HOW TO...
Create a Function
Promote a Variable
Write Blueprint Script
ASSETS ADDED / CREATED...
Function: DecrementTimer
Variable (Timer Handle): Timer
With our timer functionality now in place, we'll now add functionality to our BP_Target_+Time targets so that they'll add time to our game timer when destroyed.
THIS LESSON TEACHES HOW TO...
Create Variables
Write Blueprint Script
ASSETS ADDED / CREATED...
Variable (Integer): BonusTime
In this video we'll create script to make our player respawn if they die from running out of health.
THIS LESSON TEACHES HOW TO...
Create a Custom Event
Communicate between Blueprints using an Event Dispatcher
ASSETS ADDED / CREATED...
Custom Event: Respawn
Custom Event: OnDestroyed_Event_0
In this video we'll make our Level Complete Menu appear on the screen when a player has reached the designated area.
THIS LESSON TEACHES HOW TO...
Add a Blueprint Component
Create a Custom Event
Write Blueprint Script
ASSETS ADDED / CREATED...
Blueprint Component (Audio): Music_LevelComplete
Custom Event: Level Complete
In this video we'll tally a final score on the Level Complete Menu and make the buttons interactive.
THIS LESSON TEACHES HOW TO...
Create a Variable
Bind Functions to Widgets
Write Blueprint Script
ASSETS ADDED / CREATED...
Variable (Integer): TimeRemainingMultiplier
Function: GetTargetScore
Function: GetTimeRemainingScore
Function: GetFinalScore
In this video we'll make our Game Over Menu appear on the screen when a player has run out of time.
THIS LESSON TEACHES HOW TO...
Add a Blueprint Component
Create a Custom Event
Create Blueprint Script
ASSETS ADDED / CREATED...
Blueprint Component (Audio): Music_GameOver
Custom Event: Game Over
In this video we'll make our buttons interactive on the Game Over Menu.
THIS LESSON TEACHES HOW TO...
Create Blueprint Script
In this video we'll create a Player Controller Blueprint and assign it to BP_GameMode_Gameplay. Then, we'll add script to enable the user to pause and unpause the game.
THIS LESSON TEACHES HOW TO...
Create a Player Controller
Set a Player Controller Blueprint in the Game Mode Blueprint
Create a Variable
Write Blueprint Script
ASSETS ADDED / CREATED...
Player Controller Blueprint: BP_PlayerController
Variable (Boolean): IsGamePaused?
In this video we'll make our buttons interactive on the Pause Menu.
THIS LESSON TEACHES HOW TO...
Write Blueprint Script
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.