๐ฎ C++ for Unreal Engine
Programming gameplay in C++ with and for Unreal Engine 5.8 โ beyond Blueprints, into the code that powers real games.
๐ About This Course
Blueprints are wonderful, but sooner or later serious Unreal work reaches for C++: for performance, for reusable systems, for engine features Blueprints never expose, and for the clean base classes your designers extend visually. This course is about that layer โ writing C++ with Unreal (its types, its rules, its reflection system) and for Unreal (actors, gameplay, data, UI, networking).
It is standalone: a short on-ramp orients you to the editor from a programmer's perspective and refreshes the C++ features Unreal leans on hardest, so you don't need a prior Unreal or C++ course to keep up. From there we go deep, one system at a time, always tying native code back to the Blueprint workflow you already know. Every lesson uses real, compile-correct Unreal Engine 5.8 C++.
What You'll Learn
- How Unreal's reflection system (
UCLASS,UPROPERTY,UFUNCTION) makes C++ talk to the editor, Blueprint, serialization, and networking - The gameplay framework in native code โ Actors, Components, Pawns, Characters, Controllers, and their lifecycles
- Unreal's own types, containers, and memory model, and how garbage collection changes how you write C++
- The C++ โ Blueprint boundary: exposing functions, properties, structs, and events, and the base-class/subclass pattern that teams actually use
- Data-driven design, persistence, subsystems, modules, plugins, UMG UI, multiplayer replication, and performance profiling
- How to assemble a complete, shippable C++ gameplay feature from scratch
Who This Course Is For
- Blueprint-comfortable Unreal users ready to cross into C++
- Programmers from other engines or general C++ who want the Unreal-specific way of working
- Anyone who wants to understand what the engine is doing beneath the nodes
๐ Course Modules
12 modules ยท 44 lessons ยท ~55 hours ยท Unreal Engine 5.8
Module 1: Orientation & Setup
Where C++ fits in Unreal, the editor from a programmer's view, the toolchain, an Unreal-flavored C++ refresher, and your first compile.
Module 2: Unreal C++ Foundations
The reflection system, property and function specifiers, Unreal's core types and containers, memory and garbage collection, and debugging.
- Lesson 2.1: Project & Module Anatomy and the Coding Standard
- Lesson 2.2: The Reflection System โ UCLASS, USTRUCT, UENUM
- Lesson 2.3: UPROPERTY & UFUNCTION Specifiers
- Lesson 2.4: Unreal Core Types โ FString, FName, FText & Containers
- Lesson 2.5: Memory & Garbage Collection
- Lesson 2.6: Logging, Assertions & Debugging C++
Module 3: Actors, Components & the Gameplay Framework
The gameplay framework class map, writing Actors and custom Components in C++, subobjects and lifecycle, spawning, and actor communication.
Module 4: Input & Player Control
Enhanced Input in C++, Pawns and Characters and movement, and the PlayerController and possession flow.
Module 5: Interaction & Events
Collision, overlaps and hit events, traces and spatial queries, timers, delegates and events, and interfaces for decoupled communication.
Module 6: C++ โ Blueprint Interop
The heart of the course: exposing functions, properties, structs, enums, and data to Blueprint, and the C++-base / Blueprint-subclass workflow.
Module 7: Data, Config & Persistence
Driving your game from data with DataTables and DataAssets, config properties and .ini, saving and loading, and Subsystems as the modern singleton.
Module 8: Modules, Build System & Plugins
Unreal's module and build system in depth, integrating third-party libraries, and packaging your code as a reusable C++ plugin.
Module 9: UI from C++ (UMG)
Creating and driving UMG user widgets from C++, binding data, and handling UI events in native code.
Module 10: Networking & Replication in C++
The multiplayer model, property replication and RepNotify, RPCs, and a full walkthrough of replicating a gameplay feature.
Module 11: Performance, Async & Profiling
Async and multithreading the Unreal way, and profiling with Unreal Insights alongside practical optimization patterns.
Module 12: Capstone
Bring it all together: build a complete C++ gameplay feature that integrates interop, data, persistence, UI, and optional replication.
โ Prerequisites
This course is standalone โ Module 1 orients you to the editor and refreshes the C++ you'll rely on. To keep the pace comfortable, it helps to have:
- Basic programming literacy (variables, functions, classes, loops) in some language โ the Module 1 refresher covers the C++-specific parts
- Enough comfort in the Unreal Editor to open a project and place an actor (Module 1 gives a programmer-focused tour)
- A willingness to compile, break things, and read build output โ that's where the learning happens
Required Software
- Unreal Engine 5.8 (this course targets 5.8; most concepts apply to 5.x)
- A C++ toolchain & IDE โ Visual Studio 2022 (Windows) or JetBrains Rider; Xcode on macOS. Lesson 1.3 walks through setup.
- Several GB of free disk space for engine, symbols, and build intermediates
๐ Additional Resources
Official Documentation
Useful Links
Support
If you have questions or need help:
- Visit Ray's contact page
- Ask in the Epic Developer Community forums linked above