
Learn how to download Unreal Engine from source code, link your Epic Games and GitHub accounts, and download a specific engine version as a zip for smooth integration.
Install the free Visual Studio Community 2019 for Unreal Engine development, selecting desktop with C++ and game development with C++, then sign in.
Install the UnrealVS extension in Visual Studio, customize the toolbar and the projects and solutions options, and adjust intellisense and squiggles to streamline Unreal Engine development.
Learn how to compile Unreal Engine from source, run GenerateProjectFiles.bat, resolve .NET 4.6.2 issues, build in Visual Studio, launch the editor, and prepare for version control.
Version control provides backup, sharing, and a time-machine history for code and data, usable locally or on a server, with Perforce or Git as common options.
Learn how to add a customized unreal engine to version control with Perforce, configure typemap and workspace mappings, and manage file uploads—including dlls and exes—by marking, submitting, and excluding binaries.
Unreal Engine blueprints enable visual scripting in the editor, deriving from existing C++ or blueprint classes, customizing data, and adding code via graphical nodes for player input.
Compare C++ and blueprints in Unreal Engine to balance performance and debugging, with a preference for C++ for most code, and blueprints for class data customization and prototyping.
Learn to create c++ classes in the Unreal editor, derive from pawn for a ball bearing, enable tick and physics, and build a blueprint with a static mesh called materialsphere.
Explore Unreal Engine's native dynamic arrays (TArray), learn how to declare, access, and modify elements with Add, Emplace, Insert, Remove, and Reset, iterate with ranged-for, and sort with simple lambdas.
Unreal engine's actor life-cycle includes construction, initialization, the main loop, and destruction. Initialize variables, create subobjects, use post initialize components and begin play, then tick each frame and end play.
Construct a test level in Unreal Engine by setting a player start, adjusting lighting and post-processing, and building obstacles with starter content shapes.
Conclude by reviewing Unreal Engine project basics: actor life cycle, properties, blueprints and C++ integration, level design, input and physics, debugging HUDs, and next steps in math.
Learn how the C++ compiler evaluates expressions in a fixed order, from parentheses to multiplication and division before addition and subtraction, and use parentheses to remove ambiguity.
Master ratios as a parametric 0-to-1 scale used in game math, including interpolation and distance-based volume attenuation with logarithmic falloff. Clamp ratios between min and max values to drive calculations.
Learn how abs and sign manage magnitude and direction in game coding, restoring the original sign after power or modulo operations, and distinguishing unit sign from sine.
Explore 3d vectors in Unreal Engine, using x, y, and z coordinates for positions and directions in a left-handed system. Master length, normalization, and vector addition, subtraction, and scaling.
Explore coordinate spaces as frames of reference in Unreal Engine, and learn to transform between world space, vehicle space, and parent-child hierarchies using transform and get component transform.
Explore magnetism in Unreal Engine game coding by making level goals attract ball bearings, computing direction and distance, and applying a tunable magnetic force in the tick loop.
Learn to use the Unreal Engine console to issue commands, set variables, and configure console variables in config files for rapid testing and default state control.
Finish the game by detecting end states when all goals have ball bearings, using a goal check loop. Add background music and applause audio, and implement finish timer with restart.
Create your second Unreal Engine project in C++, load the starter setup, and build a test level. Configure gravity, surface types, and object channels with missile and vehicle presets.
Modify Unreal Engine physics to support vehicle collisions by updating five core files, adding contact modification, inertia tensor, and center of mass controls for realistic balance.
Download and install the GRIP source code and data incrementally to keep up with each lecture, overwrite updated folders, and regenerate Visual Studio project files for interactive learning.
Build a custom vehicle dynamics model in Unreal Engine using a skeletal mesh and physics asset. Learn about center of mass, inertia overrides, and tuned mass to achieve stable handling.
Master the GRIP code in Unreal Engine by studying a minimal, progressively built vehicle and camera system, data assets, and modular blueprints, all while adhering to coding standards.
Learn how diagnostic checks and Unreal Engine macros guard code with check and verify, log issues to the output, and decide behavior across debug and shipping builds.
Explore implementing realistic vehicle suspension in Unreal Engine by using wheel contact sensors, line sweeps, and optimized estimation to control axle dynamics and maintain gameplay stability.
Explore Unreal Engine logging to diagnose issues by sending messages to the editor output log or Visual Studio, using a shared log category, verbosity levels, and the log macro.
Explore how physics materials control friction and restitution, and how combined modes like min, mean, max shape interactions with surface types such as asphalt, metal, and rock.
Explore how to control game timing with global and per-actor time dilation, using base time dilation and custom time dilation to slow or speed time, and the physics considerations involved.
Explore textures, materials, and particle systems in Unreal Engine, learn how textures feed materials, how materials act as shaders, and how data assets drive driving surface effects.
Learn how driving surfaces and wheel effects are implemented in pro Unreal Engine game coding, using per-wheel data structures to drive regular and fixed particle effects with dynamic dust color.
Enable continuous collision detection (CCD) to prevent tunneling of fast-moving bodies. Set max substep delta time to 0.01 for 100 hertz, and attach a small CCD sphere to vehicles.
Explore audio data assets, sound cues, and sound waves in Unreal Engine, then use attenuation, overrides, and the master sound class hierarchy to shape vehicle sounds with volume and pitch.
Learn to implement realistic vehicle audio in Unreal Engine using attached audio components, per-vehicle global volume, camera locations, and bell-curve attenuation to prioritize nearby vehicles.
Discover how autonomous bots navigate with pursuit splines, compute ahead aiming points, and switch splines at junctions using weaving offsets and speed data to drive smoothly along tracks.
Discover how Unreal Engine bots use layered driving modes—from general maneuvering to recovering control and J turn reorientation—driven by local-space collision analysis and adaptive decision making.
Hey there, and welcome to the course, Pro, Unreal Engine, Game Coding. aka, the Black Book, but why the Black Book? Well, just watch the short preview video if you want the full experience. But if you like reading, then around 25 years ago, when I was just entering the games industry, there emerged just such a black book. A book of graphics programming, full of coding voodoo written by the programming powerhouse that is Michael Abrash. And this black book, took many coders like myself, from being merely competent, to being able to produce something akin to magic on the screen. It was legendary.
Naturally, a lot has changed since then, and in this course we've crafted a new black book for a new generation, a series of masterclasses in Unreal Engine game coding for the 2020s. I want to give you guys, what it was, that Michael Abrash gave my generation. I'm going to take you from being an Unreal Engine virgin, to being a real pro, and a prized asset to any employer.
My last game, GRIP: Combat Racing, will be the focus for the latter half of this course, and we'll get to see an awful lot of what's going on under the hood there. We're going to expose all of its secrets. This journey will take you from being a C++ novice, all the way up to writing the most challenging racing game I've ever been involved with, and I've written a few. But if that sounds terrifying, don't worry, we've got this. We can do this, together.
I'll be presenting in a no-nonsense style, side-stepping a lot of the hokum you don't need to know, focusing intently on the stuff you really do, and providing rock-solid examples of how to apply what you'll be taught here. This is not academia, this is real-world getting it done, and getting it done well kind of coding. This is stuff taken straight from the battlefield of game development. After firmly establishing all of the fundamentals, I'll be imbuing you with tricks and techniques, algorithms and insights, gathered from decades of coding experience that you can apply across many game genres. We're going to turn you, into an Unreal Engine Ninja.
So get ready coder one, because we've got work to do.