Intro to Unreal Engine

Unreal Engine Course designed by Ethan Minnich. This page mirrors the provided PDF content, lightly enhanced with clarifications, best‑practices, and reference links for modern Unreal Engine 5 workflows.

Course Goals (At a Glance)

  • Get comfortable with the UE5 interface and tools.
  • Start a Third‑Person Blueprint project with Starter Content.
  • Model with meshes, materials, and transform tools.
  • Use Landscapes, Layers, and Foliage to build worlds.
  • Blueprint fundamentals: variables, flow, functions, UI.
  • Design and graybox a level; add core win/lose mechanics.

Before You Begin

  • Install Epic Games Launcher and Unreal Engine 5.
  • Sign in to Epic Games (create an account if needed).
  • Enable Starter Content in project creation.
  • Optional: In Project Settings, set your default maps under Maps & Modes.

Editor & Viewport Controls

Selection & Navigation

  • Left‑Click select
  • Right‑Click + Drag look around
  • W/A/S/D while holding Right‑Click to fly
  • Mouse Wheel zoom
  • F focus selected actor

Play & Save

  • Alt + P Play In Editor
  • Esc Stop play
  • Ctrl + S Save Level
  • Ctrl + Shift + S Save All

Module 1 — Getting Started

Create a Project

Recommended Performance Tweaks

If your machine struggles, try:

Add Content Packs

  1. Save your project; close UE5.
  2. In Epic Games Launcher → MarketplaceFree, find an asset pack (e.g., building kits).
  3. Click Add to Project and select your game.

Create a Level

  1. File → New Level → Basic.
  2. Save as CastleLevel and open it.

Set Default Level

  1. Edit → Project Settings → Maps & Modes.
  2. Set your Editor Startup Map and Game Default Map.

Place & Transform Meshes

Materials

Player Start

Level Planning

Build a Platforming Challenge

Module 2 — Landscapes & Blueprints

Create a Landscape

Sculpt Tool

Landscape Materials & Layers

  1. Create CustomMaterials/MAT_Landscape.
  2. Add texture samples and a LandscapeLayerBlend node.
  3. Name layers (e.g., Grass, Gravel), set preview weights, wire to Base Color.
  4. Feed LandscapeLayerCoords into texture UVs; tweak Mapping Scale (e.g., 7).
  5. Set Roughness via a Constant (1.0).

Paint the Landscape

Foliage Tool

Blueprints — Strings, Variables, Print

  1. Open Level Blueprint.
  2. Add N keyboard event → Print String.
  3. Create a PlayerName string variable and append to “Hello ”.

Blueprints — Integers & Branch

  1. Add G keyboard event → Print String.
  2. Create TotalGold (int) and GainGold = 1.
  3. Set TotalGold = TotalGold + GainGold, print a message, and use a Branch to check thresholds.
  4. Organize with comment boxes, reroute pins, and functions (e.g., AddGold).

Module 3 — Interactables, UI & Sprint

Locked Door & Key Setup

  1. Create BP_Key (Actor) with Sphere and a trigger Box Collision.
  2. Create BP_Door (Actor) with a Static Mesh and Box Collision (plus an inner collision box set to BlockAll).

Key Blueprint

Door Blueprint

Jump Pad

  1. Create BP_JumpPad (Actor) with a Cylinder.
  2. On Hit, Cast to player and use Launch Character (e.g., Z = 1000).

Double Jump

Collectible Coins

  1. Add CoinCount (int) to the Character.
  2. Create BP_Coin with Sphere + Sphere Collision, optional Rotating Movement and Spot Light.
  3. On overlap, increment CoinCount then DestroyActor.

UI Widget for Coins

  1. Create Widget Blueprint HUD_Coin.
  2. Use a Canvas with a Horizontal Box and two Text blocks.
  3. Bind the second Text to CoinCount (e.g., via getter or binding function).
  4. In Game Mode (or on BeginPlay), Create WidgetAdd to Viewport.

Sprinting with Inputs & Functions

  1. Create IA_Sprint (Input Action) with Hold and Released triggers.
  2. Add to your Input Mapping Context (e.g., Left Shift and Gamepad RT).
  3. Create SprintStart/SprintStop functions to set Max Walk Speed higher/lower. Optionally track IsSprinting (bool).

Module 4 — Game Design & Grayboxing

Game Design Document (GDD)

Level Design

Mechanics: Win / Lose / Checkpoint

  1. BP_Win: box overlap prints “You Win!”.
  2. BP_Checkpoint: store a Checkpoint vector in Character.
  3. BP_Enemy: on overlap, print “Game Over” and respawn at Checkpoint.
  4. Transfer working logic from DebugLevel back into the main level.

Helpful Extras & Clarifications

Default Maps

Set both the Editor Startup Map and Game Default Map in Project Settings → Maps & Modes so the correct level opens in the editor and when you press Play.

Player Start

The Player Start actor is a drag‑and‑drop spawn point. You can have more than one and choose which to use in Blueprint or via GameMode logic.

Launch Character

Launch Character sets a pending launch velocity and moves the Character into a falling state on the next tick—perfect for jump pads.

Enhanced Input

Use Enhanced Input with Input Actions and Input Mapping Contexts (IMCs) to map keyboard and gamepad controls and react to Triggered / Completed events.

Landscape Layer Blending

LandscapeLayerBlend supports Weight, Height, and Alpha blending. Weight blending is common for gradual transitions; Height blending uses a height mask for sharper, more natural mixes.

UMG Binding

For dynamic UI, bind Text to a getter function or variable; when your variable updates, the widget reflects the change automatically.

Further Reading & Official Docs