Unreal 4.22 C++ Developer: Learn C++ and Make Video Games

Created in collaboration with Epic Games. Learn C++ from basics while making your first 4 video games in Unreal

   Watch Promo

"I'm amazed at how much content this course contains and how effective it is at instilling the concepts. So far it has certainly exceeded my expectations of an online coding course. Highly recommend this course to anyone that wants to learn how to begin coding in C++. Worth every penny."

- Jordan Heaton

This "critically-acclaimed" and "insanely successful" Unreal Engine course was created in collaboration with Epic Games.

Learn how to create and mod video games using Unreal Engine 4, even if you're a complete beginner. Unreal is a free-to-use game development engine used by AAA studios and indie developers worldwide. It can be complex beast to get into, but we break it down step-by-step

Already know Unreal and want to learn VR or Multiplayer? Check out our other Unreal courses, just look for the green leaf for our other world-class Unreal courses.

We start super simple so you need no prior experience of Unreal or coding! With our online tutorials, you'll be amazed what you can achieve. We believe project-based learning is the best way to learn Unreal Engine.

Benefit from our world-class support from both other students, and the instructors who are on the forums regularly. Go on to build several games including a tank game, and a First Person Shooter.

You will have access to a course forum where you can discuss topics on a course-wide basis, or down to the individual video. Our thriving discussion forum will help you learn and share ideas with other students.

You will learn C++, the powerful industry standard language from scratch. By the end of the course you'll be very confident in the basics of coding and game development, and hungry to learn more.

"Any serious game programmer needs to know C++"Jason Gregory, Lead Programmer at Naughty Dog (creators of Uncharted & The Last of Us)

Anyone who wants to learn to create games: Unreal Engine is a fantastic platform which enables you to make AAA-quality games. Furthermore these games can be created for Windows, consoles, MacOS, iOS, Android and Web from a single source!

If you're a complete beginner, we'll teach you all the coding and game design principles you'll need. If you're an artist, we'll teach you to bring your assets to life. If you're a coder, we'll teach you game design principles.

What this course DOESN'T cover...

Whereas this course is already huge, we can't possibly cover everything in that time. Here are some things we will not be covering...

  • Team collaboration topics.
  • Editor plugins or modifications.
  • Physics engine modification.
  • Multiplayer features.

Note: access to this course comes with an optional, free community site where you can share games and 3D models, as well as connect with other students.

Start to learn Unreal C++ now, you won't be disappointed!


"Amazing and very well done. Especially for beginner / mid level skilled. Good for both C++ and Unreal as a starting point."

- Alessandro Santarini

What you'll learn in this course:

  • C++, the games industry standard language.
  • How to use the Unreal Engine 4 Editor.
  • Git as a version control and backup system.
  • Object Oriented Programming and how to put it into practice.
  • Sound effects and audio to add depth to your games.
  • Game design principles.
  • Programming patterns and best practices.
  • Unreal's Terrain Editor to create epic landscapes.
  • Artificial Intelligence behaviour programming for enemies.
  • Strong and transferable problem solving skills.
  • Modern game development technologies and techniques.
  • A fundamental understanding of computers.
  • Write code that is clean and to understand.
  • Unreal Gameplay Framework to make games easily.
  • Advanced vehicle physics.
  • Blackboard and Behaviour Tree for customizable AI.
  • Animation Blueprint for custom character animation.
  • C++ template programming to reduce repetition.
  • Vector maths for game play and physics calculations.

"I loved the course, there was a lot of insight given to how the engine works and the c++ explanations was great as well, all throughout the course. Well worth the effort."

- Alex Andersson

Your Instructor


Ben Tristem
Ben Tristem

Ben has a degree in computing from Imperial College London, and a physics diploma from the Open University.

He started working for himself at the age of 15, and never looked back. He's explored careers as varied as being a commercial pilot, stunt-man, rock climbing instructor, and more. None of these provided a continued challenge, and stable income in the same way technology did.

After building and selling a home computer support business, he became an angel investor and business mentor in Cambridge UK. He fell in love with teaching game development through one of his investments, and now spends all of his time sharing this passion with people like you.

He can't wait to help you experience the fulfilment, and financial freedom, that having a deep understanding of technology brings.

So why not start learning to make games with him and the GameDev.tv now?



Course Curriculum (31+ hours)


  Introduction and Setup (0 hours 47 minutes)
Available in days
days after you enroll
  • Preview
    Meet The GameDev.tv Community (5:58)
  • Preview
    Compilers & VS Community (6:07)
  • Preview
    Install Prerequisites On MacOS (6:22)
  • Preview
    Build Unreal From Source (Linux) (13:56)
  • Preview
    Antivirus Warnings
  • Preview
    Install Unreal Engine 4.22 (4:35)
  • Preview
    Also Install Visual Studio Code (9:11)
  • Preview
    Want to Focus on Blueprint?
  • Preview
    Section Wrap-up (1:19)
  Triple X - Write Pure C++ (2 hours 2 minutes)
Available in days
days after you enroll
  • Preview
    Introducing Triple X & Gavin (1:42)
  • Preview
    Triple X Game Design Doc (5:00)
  • Preview
    The Structure Of C++ By Example (7:39)
  • Preview
    Your First Program (7:41)
  • Preview
    Saving Files
  • Preview
    A note to Windows users
  • Preview
    Hello, World! (8:53)
  • Preview
    Variables (8:03)
  • Preview
    const & Assigning Values (6:18)
  • Preview
    Statements & Comments (5:26)
  • Preview
    Triple X Quiz 1
  • Preview
    MSVC Compilation Warnings [Windows Only]
  • Preview
    Naming & Self Documenting Code (7:14)
  • Preview
    Getting User Input (8:56)
  • Preview
    Using if and else in C++ (7:50)
  • Preview
    Functions (11:01)
  • Preview
    Returning Data From Functions (8:33)
  • Preview
    Triple X Quiz 2
  • Preview
    Function Parameters (8:54)
  • Preview
    Comparing Values (8:09)
  • Preview
    Generating Random Number Ranges (11:36)
  • Preview
    Triple X Quiz 3
  • Preview
    What Now?
  Bulls & Cows (2019 Version) (6 hours 46 minutes)
Available in days
days after you enroll
  • Start
    Hi I'm Mike (1:16)
  • Start
    Introduction To Bull Cow Game (4:30)
  • Start
    Non-English characters
  • Start
    Importing Bull Cow Game (8:25)
  • Start
    Terminal Actor: Non-English Characters Unsupported
  • Start
    The Game Module X Could Not Be Loaded (1:12)
  • Start
    Helping Us Help You (3:31)
  • Start
    A Look Around Unreal (5:35)
  • Start
    Controlling The Viewport (4:01)
  • Start
    Editing Actors In Our Level (10:05)
  • Start
    Adding Actors To The Level (4:53)
  • Start
    Editing the Landscape (8:03)
  • Start
    Quiz 4
  • Start
    Setting Up VS Code In Unreal (4:11)
  • Preview
    4.25 VSCode Intellisense Bug (2:57)
  • Start
    Actors And Components (6:04)
  • Start
    Using The In Game Terminal (8:55)
  • Start
    Unreal's Types - FString (3:46)
  • Start
    The TEXT Macro (3:11)
  • Start
    Quiz 5
  • Start
    Bull Cow Basic Game Loop (4:42)
  • Start
    Accessing Player Input (2:53)
  • Start
    Coding The Basic Game Loop (8:58)
  • Start
    Member Variables (6:13)
  • Start
    Solving Slow Compile Times (4:27)
  • Start
    The Full Game Loop (5:16)
  • Start
    Pseudo Code (10:17)
  • Start
    Quiz 6
  • Start
    Creating Our First Function (9:52)
  • Start
    Finding And Replacing In VS Code (8:06)
  • Start
    The C++ Dot Operator (5:39)
  • Start
    Formatting FStrings (17:43)
  • Start
    Booleans (17:49)
  • Start
    Pre vs Post Increment / Decrement (18:27)
  • Start
    Parameters And Arguments (8:51)
  • Start
    Early Returns (14:33)
  • Start
    Quiz 7
  • Start
    Structure Of An FString (21:27)
  • Start
    Const Member Functions (6:16)
  • Start
    Looping In C++ (15:17)
  • Start
    Checking Characters Part 1 (9:01)
  • Start
    Checking Characters Part 2 (12:36)
  • Start
    TArray Of Hidden Words (7:49)
  • Start
    Loading Words At Runtime
  • Start
    Advanced Cursor Usage In VSCode (5:33)
  • Start
    TArray Functions .Num() (5:47)
  • Start
    Early August Update (1:34)
  • Start
    Logical Operators (6:47)
  • Start
    TArray Functions Adding And Removing (16:19)
  • Start
    Range-Based For Loop (5:33)
  • Start
    Quiz 8
  • Start
    A Quick Look At Memory (5:35)
  • Start
    Introduction To References (13:59)
  • Start
    Random And The UE4 Docs (13:49)
  • Start
    Out Of The Frying Pan (3:41)
  • Start
    Loading Words With A Predicate
  • Start
    Out Parameters (14:58)
  • Start
    Break Out Of A Loop (2:48)
  • Start
    Structs (11:13)
  • Start
    Bull Cow Extras (1:33)
  • Start
    Bull Cow Wrap Up (0:48)
  Building Escape (8 hours 51 minutes)
Available in days
days after you enroll
  • Start
    Welcome To Building Escape (2:10)
  • Start
    Building Escape End Goal (5:05)
  • Start
    Setting Up The Building Escape Project (5:51)
  • Start
    Pointer Primer (4:45)
  • Start
    Unreal’s Classes and Components (9:18)
  • Start
    Deleting A Class (3:53)
  • Start
    Quiz 9
  • Start
    Logging To The Output Log (7:02)
  • Start
    Project Settings: Default Startup Level (1:40)
  • Start
    Accessing An Object’s Name (15:14)
  • Start
    Getting An Actor’s Transform (13:00)
  • Start
    Quiz 10
  • Start
    Importing Custom Meshes (20:46)
  • Start
    Using BSP For Basic Building Blocks (22:54)
  • Start
    BSP Challenge (12:27)
  • Start
    Basic Lighting (9:16)
  • Start
    Quiz 11
  • Start
    Transforming Material Textures (18:17)
  • Start
    Rotating An Actor With Code (16:14)
  • Start
    Object Collision (16:31)
  • Start
    Using Linear Interpolation (19:50)
  • Start
    Quiz 12
  • Start
    Relative Vs Absolute (8:59)
  • Start
    Indentation (6:44)
  • Start
    Exposing Parameters To The Editor (4:49)
  • Start
    Assets Naming Conventions (7:42)
  • Start
    Framerate Independent Using DeltaTime (6:13)
  • Start
    Trigger Volumes (6:30)
  • Start
    Using Collision Volumes (10:56)
  • Start
    Quiz 13
  • Start
    Protecting From A Null Pointer (8:37)
  • Start
    Getting The Player To Open The Door (7:31)
  • Start
    Getting The Door To Close (4:54)
  • Start
    Using GetTimeSeconds() (12:54)
  • Start
    Designer Friendly Components (7:58)
  • Start
    Grabbing System Overview (7:27)
  • Start
    Modifying The Default Pawn Actor (10:55)
  • Start
    Inherit Game Mode Blueprint (6:40)
  • Start
    Getting Player Viewpoint (14:07)
  • Start
    Using DrawDebugLine (15:13)
  • Start
    Line Tracing AKA Ray-Casting (12:35)
  • Start
    Quiz 14
  • Start
    LineTraceSingleByObjectType() (13:40)
  • Start
    Using FindComponentByClass() (11:46)
  • Start
    Introducing Input Binding (13:23)
  • Start
    Accessors & Memory Layout (9:26)
  • Start
    Reducing Code in “Hot Loops” (20:29)
  • Start
    Using Physics Handles (16:20)
  • Start
    Refactoring Rules (18:03)
  • Start
    Iteration Through Valid Actors (21:58)
  • Start
    Pointer Protection Process (11:46)
  • Start
    SFX & Audio Clips (19:01)
  • Start
    Building Escape Final Challenge (9:45)
  • Start
    Building Escape Wrap Up (1:06)
  Toon Tanks (4 hours 34 minutes)
Available in days
days after you enroll
  • Preview
    Section Intro (0:49)
  • Start
    Project Intro (1:59)
  • Start
    Pawn Class Creation (4:03)
  • Start
    Creating Components (11:13)
  • Start
    Deriving Blueprint Classes (5:17)
  • Start
    Access Modifiers (12:12)
  • Start
    Creating Child C++ Classes (8:06)
  • Start
    Pawn Movement Input (15:53)
  • Start
    Exposing Variables (9:51)
  • Start
    Pawn Turret (13:25)
  • Start
    Find Distance Between (12:59)
  • Start
    Virtual Functions (11:45)
  • Start
    Calling Override Functions (15:13)
  • Start
    Creating Actor Classes (13:02)
  • Start
    Spawning Actors (7:06)
  • Start
    Using Dynamic Delegates (11:43)
  • Start
    Creating GameMode classes (9:42)
  • Start
    Creating a Health Component (6:22)
  • Start
    Adding Health Functionality (8:51)
  • Start
    GameMode - ActorDied (10:04)
  • Start
    Creating Widget Blueprints (11:51)
  • Start
    End Game Widget (3:45)
  • Start
    GameMode Blueprint (7:37)
  • Start
    Debugging our Health Component (7:34)
  • Start
    Player Controllers (10:57)
  • Start
    PawnTank Destruction (5:23)
  • Start
    Spawning Particles (7:13)
  • Start
    Particle Components (4:01)
  • Start
    Playing Sound Effects (5:07)
  • Start
    Creating Camera Shake (6:31)
  • Start
    Implementing Camera Shake (3:47)
  • Start
    Wrap-up And Challenges (10:40)
  Simple Shooter (8 hours 19 minutes)
Available in days
days after you enroll
  • Preview
    Section Intro: Simple Shooter (2:02)
  • Start
    Project Setup (9:55)
  • Start
    Pawns vs Characters in C++ (12:33)
  • Start
    Character Movement Functions (17:22)
  • Start
    Controller Aiming (13:30)
  • Start
    Third Person Camera Spring Arm (8:57)
  • Start
    Skeletal Animations 101 (8:20)
  • Start
    Editing Collision Meshes (5:09)
  • Start
    Animation Blueprints 101 (13:15)
  • Start
    2D Blend Spaces (10:28)
  • Start
    Connecting Animation To Gameplay (8:59)
  • Start
    Inverse Transforming Vectors (9:38)
  • Start
    Calculating Animation Speeds (11:54)
  • Start
    Gun Actors (11:34)
  • Start
    Spawning Actors At Runtime (6:37)
  • Start
    Attaching To Meshes Via Sockets (10:20)
  • Start
    Shooting Architecture (6:14)
  • Start
    Spawning Particle Effects (8:14)
  • Start
    Player View Point (10:52)
  • Start
    Line Tracing By Channel (12:28)
  • Start
    Impact Effects (4:37)
  • Start
    Dealing Damage To Actors (8:04)
  • Start
    Virtual Methods In C++ (10:15)
  • Start
    Overriding TakeDamage (9:06)
  • Start
    Blending Animations By Booleans (4:41)
  • Start
    Blueprint Pure Nodes (6:28)
  • Start
    Create and Setup an AI controller (3:59)
  • Start
    AI Aiming (6:13)
  • Start
    Nav Mesh And AI Movement (10:48)
  • Start
    Checking AI Line Of Sight (7:39)
  • Start
    BehaviorTrees And Blackboards (8:06)
  • Start
    Setting Blackboard Keys In C++ (5:54)
  • Start
    Behavior Tree Tasks And Sequences (8:24)
  • Start
    BT Decorators And Selectors (12:12)
  • Start
    Custom BTTasks In C++ (7:53)
  • Start
    Executing BTTasks (10:31)
  • Start
    BTTasks That Use The Pawn (10:48)
  • Start
    BTServices In C++ (15:04)
  • Start
    Ignoring Actors In Line Traces (6:03)
  • Start
    Ending The Game (10:16)
  • Start
    Setting Timers In C++ (10:10)
  • Start
    Displaying A Lose Screen (11:32)
  • Start
    Iterating Over Actors (10:25)
  • Start
    Calculating The Win Condition (12:20)
  • Start
    Refactoring PullTrigger (7:53)
  • Start
    Weapon Sound Effects (6:35)
  • Start
    Randomized Sound Cues (8:35)
  • Start
    Sound Spatialization (6:45)
  • Start
    Crosshairs and HUDs (7:42)
  • Start
    Health Bars (7:50)
  • Start
    AimOffsets (12:04)
  • Start
    Animation State Machines (10:03)
  • Start
    Complex State Machines (13:00)
  • Start
    Wrap-up And Challenges (8:49)
  Extras (0 hours 0 minutes)
Available in days
days after you enroll
  • Preview
    All Downloads
  • Preview
    All Section Slides
  Updates and Important Messages (0 hours 0 minutes)
Available in days
days after you enroll
  • Start
    Coupon For Original Course Content

Frequently Asked Questions


When does the course start and finish?
The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish.
How long do I have access to the course?
How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.
What if I am unhappy with the course?
We would never want you to be unhappy! If you are unsatisfied with your purchase, contact us in the first 30 days and we will give you a full refund.

Get started now!