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