Section 1 : Introduction & Setup
|
Lecture 1 | INTRODUCTION TO BRAINMEASURES PROCTOR SYSTEM | |
|
Lecture 2 | About Certification | |
|
Lecture 3 | Install Unity 2018 | 00:05:05 Duration |
|
Lecture 4 | Install Visual Studio Code | 00:06:47 Duration |
|
Lecture 5 | Not Making Intellisense | |
|
Lecture 6 | Quick Game Design Overview | 00:02:18 Duration |
|
Lecture 7 | Architectural Overview | 00:07:21 Duration |
|
Lecture 8 | About Proctor Testing |
Section 2 : Basic Movement
|
Lecture 1 | Section Overview - Basic Movement | 00:01:00 Duration |
|
Lecture 2 | Create A Simple Sandbox | 00:13:12 Duration |
|
Lecture 3 | Move Using Nav Mesh Agent | 00:08:22 Duration |
|
Lecture 4 | Refining Your Nav Mesh | |
|
Lecture 5 | Introduction To Raycasting | 00:06:47 Duration |
|
Lecture 6 | Implement Click-To-Move | 00:10:02 Duration |
|
Lecture 7 | Create A Fixed Follow Camera | 00:06:43 Duration |
|
Lecture 8 | Animation Blend Trees | 00:12:38 Duration |
|
Lecture 9 | Match Animation To Movement | 00:16:10 Duration |
|
Lecture 10 | Basic Movement Tweaks | 00:06:10 Duration |
|
Lecture 11 | Project Folder Structure | 00:10:25 Duration |
Section 3 : High Level Game Design
|
Lecture 1 | Section Intro - High Level Design | 00:01:05 Duration |
|
Lecture 2 | 1 | 00:10:22 Duration |
|
Lecture 3 | The Player Experience | 00:06:47 Duration |
|
Lecture 4 | First Draft Of Your GDD | 00:10:09 Duration |
Section 4 : Basic Combat
|
Lecture 1 | Section Overview - Basic Combat | 00:01:08 Duration |
|
Lecture 2 | Separating The Control Layer | 00:12:17 Duration |
|
Lecture 3 | Namespaces To See Dependencies | 00:12:56 Duration |
|
Lecture 4 | Raycasting For Components | 00:14:29 Duration |
|
Lecture 5 | Implementing Action Priority | 00:09:56 Duration |
|
Lecture 6 | Move Within Range | 00:08:59 Duration |
|
Lecture 7 | Cancelling Combat With Movement | 00:10:22 Duration |
|
Lecture 8 | Decoupling Dependency Cycles | 00:10:58 Duration |
|
Lecture 9 | Dependency Inversion With Interfaces | 00:10:07 Duration |
|
Lecture 10 | Add Attack Animation | 00:05:51 Duration |
|
Lecture 11 | Trigger Animation In Code | 00:08:31 Duration |
|
Lecture 12 | Throttling Our Attacks | 00:06:09 Duration |
|
Lecture 13 | Taking Damage | 00:08:43 Duration |
|
Lecture 14 | Nested Prefabs And Variants | 00:11:59 Duration |
|
Lecture 15 | Using Prefab Variants | 00:10:30 Duration |
|
Lecture 16 | Any State Animations | 00:03:24 Duration |
|
Lecture 17 | Trigger Death Animation | 00:04:23 Duration |
|
Lecture 18 | Stop Attacking Already | 00:10:39 Duration |
|
Lecture 19 | Look Them In The Eyes | 00:06:37 Duration |
|
Lecture 20 | Ignore Dead Enemies | 00:06:22 Duration |
|
Lecture 21 | Bugs What Bugs | 00:10:44 Duration |
Section 5 : Enemy AI
|
Lecture 1 | Section Overview - Enemy AI | 00:02:17 Duration |
|
Lecture 2 | Calculating AI Chase Distance | 00:08:57 Duration |
|
Lecture 3 | Swappable Control Systems | 00:10:40 Duration |
|
Lecture 4 | Disable Control When Dead | 00:10:23 Duration |
|
Lecture 5 | Visualising With Gizmos | 00:06:52 Duration |
|
Lecture 6 | AI Guarding Behaviour | 00:04:17 Duration |
|
Lecture 7 | That's Some Suspicious Behaviour | 00:08:26 Duration |
|
Lecture 8 | Visualising Waypoints | 00:09:09 Duration |
|
Lecture 9 | Waypoint Loops | 00:06:34 Duration |
|
Lecture 10 | Patrolling Behaviour | 00:09:24 Duration |
|
Lecture 11 | Dwelling At Waypoints | 00:07:18 Duration |
Section 6 : First Moment
|
Lecture 1 | Section Overview - First Moment | 00:01:00 Duration |
|
Lecture 2 | Design A Moment | 00:08:00 Duration |
|
Lecture 3 | Sketch Your Moment | 00:08:18 Duration |
|
Lecture 4 | Tips To Improve Workflow | 00:10:35 Duration |
|
Lecture 5 | Craft The Environment | 00:10:50 Duration |
|
Lecture 6 | Hits-To-Kill Design Metric | 00:08:01 Duration |
|
Lecture 7 | Tweak Enemy Patrol | 00:12:59 Duration |
|
Lecture 8 | Cinemachine Follow Camera | 00:08:39 Duration |
|
Lecture 9 | Make Cinematic Sequence | 00:16:09 Duration |
|
Lecture 10 | Trigger Cinemachine Cut Scene | 00:09:35 Duration |
|
Lecture 11 | The Observer Pattern In C# | 00:14:00 Duration |
|
Lecture 12 | Player Input In Cutscenes | 00:07:03 Duration |
Section 7 : Scene Management
|
Lecture 1 | Section Overview - Scene Management | 00:01:18 Duration |
|
Lecture 2 | Make A Second Scene | 00:09:48 Duration |
|
Lecture 3 | Scene Loading Portals | 00:07:44 Duration |
|
Lecture 4 | How Coroutines Work | 00:10:08 Duration |
|
Lecture 5 | Wait For Scene To Load | 00:06:56 Duration |
|
Lecture 6 | Player Spawn Point | 00:11:01 Duration |
|
Lecture 7 | Cross Scene References | 00:08:11 Duration |
|
Lecture 8 | Canvas Groups For Fading | 00:02:24 Duration |
|
Lecture 9 | Nested Coroutines For Fading | 00:11:22 Duration |
|
Lecture 10 | Avoiding The Singleton Pattern | 00:14:02 Duration |
Section 8 : Saving Asset Pack
|
Lecture 1 | Section Overview Saving Asset Pack | 00:02:19 Duration |
|
Lecture 2 | The Saving System Overview | 00:05:35 Duration |
|
Lecture 3 | Triggering Saving And Loading | 00:08:48 Duration |
|
Lecture 4 | Saveable Components And GameObjects | 00:14:01 Duration |
|
Lecture 5 | Challenge Saveable Health | |
|
Lecture 6 | Checkpoints Between Scenes | 00:11:56 Duration |
|
Lecture 7 | Loading The Saved Scene | 00:08:35 Duration |
|
Lecture 8 | BONUS Capturing Multiple Parameters | |
|
Lecture 9 | BONUS Runtime Objects |
Section 9 : Saving System
|
Lecture 1 | Skip Or Continue | |
|
Lecture 2 | Section Overview Saving System | 00:02:05 Duration |
|
Lecture 3 | Save System Design | 00:06:50 Duration |
|
Lecture 4 | Overview Of Binary Serialization | 00:12:10 Duration |
|
Lecture 5 | File Paths In C# | 00:05:14 Duration |
|
Lecture 6 | Understanding Unicode | 00:11:44 Duration |
|
Lecture 7 | Filestream Read And Write In C# | 00:08:20 Duration |
|
Lecture 8 | Converting To Binary In C# | 00:10:04 Duration |
|
Lecture 9 | BinaryFormatter For Serialization | 00:16:48 Duration |
|
Lecture 10 | Saveable Entities | 00:15:45 Duration |
|
Lecture 11 | Generating UUIDs In C# | |
|
Lecture 12 | Editing SerializedFields | 00:14:59 Duration |
|
Lecture 13 | Serializing With SaveableEntities | 00:08:50 Duration |
|
Lecture 14 | Saving Multiple Scenes - Part 1 | 00:08:52 Duration |
|
Lecture 15 | Saving Multiple Scenes - Part 2 | 00:07:42 Duration |
|
Lecture 16 | Checkpoints Between Scenes | 00:08:29 Duration |
|
Lecture 17 | ISaveable Components | 00:14:36 Duration |
|
Lecture 18 | Deduplicating UUIDs | 00:12:43 Duration |
|
Lecture 19 | Restoring Health | 00:06:36 Duration |
|
Lecture 20 | Reloading The Last Scene | 00:12:52 Duration |
|
Lecture 21 | Fading Before Scene Load | 00:08:41 Duration |
Section 10 : Simple Weapons
|
Lecture 1 | Section Overview Simple Weapons | 00:00:59 Duration |
|
Lecture 2 | Equip A Weapon | 00:10:40 Duration |
|
Lecture 3 | Animator Override Controller | 00:06:11 Duration |
|
Lecture 4 | Creating Scriptable Objects | 00:07:24 Duration |
|
Lecture 5 | Unarmed As A Weapon | 00:07:35 Duration |
|
Lecture 6 | Basic Weapon Pickup | 00:11:09 Duration |
|
Lecture 7 | Left Handed Weapons | 00:11:41 Duration |
|
Lecture 8 | Make A Weapon Projectile | 00:11:21 Duration |
|
Lecture 9 | Shoot Projectiles | 00:12:21 Duration |
|
Lecture 10 | Damage From Projectiles | 00:09:12 Duration |
|
Lecture 11 | Trails & Prefab Variants | 00:11:59 Duration |
|
Lecture 12 | Destroy Old Weapon | 00:09:33 Duration |
|
Lecture 13 | Improve Projectile Behaviour | 00:11:16 Duration |
|
Lecture 14 | Fireball Weapon & Pickup | 00:06:37 Duration |
|
Lecture 15 | Fireball Particle System | 00:08:54 Duration |
|
Lecture 16 | Projectile Impact Effect | 00:05:45 Duration |
|
Lecture 17 | Destroy The Unwanted | 00:14:12 Duration |
|
Lecture 18 | Resetting The Default Animator | 00:06:53 Duration |
|
Lecture 19 | Dynamic Resource Loading | 00:09:42 Duration |
|
Lecture 20 | Saving Weapon Choice | 00:05:48 Duration |
|
Lecture 21 | Pickup Respawning | 00:06:59 Duration |
Section 11 : Character Stats
|
Lecture 1 | Progression Design | 00:09:47 Duration |
|
Lecture 2 | Progression Scriptable Object | 00:11:24 Duration |
|
Lecture 3 | Looking Up The Health Stat | 00:13:28 Duration |
|
Lecture 4 | Debug Health Display | 00:11:54 Duration |
|
Lecture 5 | Enemy Health Display | 00:06:27 Duration |
|
Lecture 6 | Awarding Experience Points | 00:10:49 Duration |
|
Lecture 7 | Editing Scriptable Object Files | 00:09:16 Duration |
|
Lecture 8 | Finding A Stat By Enum | 00:08:58 Duration |
|
Lecture 9 | Saving Experience Points | |
|
Lecture 10 | Displaying Experience | 00:05:22 Duration |
|
Lecture 11 | Performant Lookups With Dictionaries | 00:11:24 Duration |
|
Lecture 12 | Levelling Up | 00:14:22 Duration |
|
Lecture 13 | Displaying The Level | 00:03:03 Duration |
|
Lecture 14 | Squashing Health Bugs | 00:07:48 Duration |
|
Lecture 15 | Events And Delegates | 00:12:25 Duration |
|
Lecture 16 | Delegates And Actions For Leveling Up | 00:07:01 Duration |
|
Lecture 17 | Saving Race Conditions | 00:06:42 Duration |
|
Lecture 18 | Level Up Events And Particle Effects | 00:11:56 Duration |
|
Lecture 19 | Damage Progression | 00:10:56 Duration |
|
Lecture 20 | Extensible Modifier System | 00:11:59 Duration |
|
Lecture 21 | Percentage Modifiers | 00:12:05 Duration |
|
Lecture 22 | Data Hazards And Race Conditions | 00:07:51 Duration |
|
Lecture 23 | Hunting Down Race Conditions | 00:09:07 Duration |
|
Lecture 24 | Awake vs Start | 00:11:31 Duration |
|
Lecture 25 | Lazy Initialisation | 00:12:45 Duration |
|
Lecture 26 | Progression Stats Spreadsheet | 00:20:01 Duration |
Section 12 : Final Polish
|
Lecture 1 | Configurable Cursors | 00:12:36 Duration |
|
Lecture 2 | Cursors And UI | 00:10:32 Duration |
|
Lecture 3 | Generic Raycastable Components | 00:14:45 Duration |
|
Lecture 4 | Cursor Type With IRaycastable | 00:07:01 Duration |
|
Lecture 5 | Raycast Sorting | 00:09:36 Duration |
|
Lecture 6 | Raycasting To A NavMesh | 00:15:55 Duration |
|
Lecture 7 | Calculating A NavMesh Path | 00:15:47 Duration |
|
Lecture 8 | In Game UI | 00:09:42 Duration |
|
Lecture 9 | Text Fading Animation | 00:05:02 Duration |
|
Lecture 10 | Spawning Damage Text | 00:07:56 Duration |
|
Lecture 11 | Using Unity Events | 00:11:26 Duration |
|
Lecture 12 | Updating The Damage Text Value | 00:05:04 Duration |
|
Lecture 13 | Unity Events With Parameters | 00:06:30 Duration |
|
Lecture 14 | Health Bar UI | 00:12:51 Duration |
|
Lecture 15 | Updating The Health Bar Scale | 00:07:01 Duration |
|
Lecture 16 | Disabling Empty Health Bars | 00:05:44 Duration |
|
Lecture 17 | Fixing The Fader | 00:11:30 Duration |
|
Lecture 18 | Coroutine Race Conditions | 00:10:50 Duration |
|
Lecture 19 | Camera Facing LateUpdate Fix | 00:01:52 Duration |
|
Lecture 20 | Sound Effects And UnityEvents | 00:13:45 Duration |
|
Lecture 21 | Weapon Prefab Refactor | 00:07:18 Duration |
|
Lecture 22 | Fighter To Weapon Communication | 00:09:38 Duration |
|
Lecture 23 | Boom Microphone Audio Listener | 00:08:16 Duration |
|
Lecture 24 | Health Pickup Hack | 00:08:16 Duration |
|
Lecture 25 | Visual Polish Audit | 00:05:43 Duration |
|
Lecture 26 | Visual Polish Part 1 | 00:07:24 Duration |
|
Lecture 27 | Visual Polish - Macro Details | 00:11:38 Duration |
|
Lecture 28 | Visual Polish - Micro Details | 00:12:08 Duration |
|
Lecture 29 | Combat Moment Fine Tuning | 00:06:20 Duration |
|
Lecture 30 | Bug Attacking Distant Enemies | 00:07:57 Duration |
|
Lecture 31 | Enemy AI Agro | 00:07:32 Duration |
|
Lecture 32 | Enemy Mob Mechanics | 00:10:10 Duration |
|
Lecture 33 | Bug Shooting Over Water | 00:03:05 Duration |