
Create a new Unity project in Unity Hub with the universal render pipeline, then set up a scene with a scaled plane and checker material. Begin building the character controller.
Add a character controller to handle collisions and gravity in unity, perform manual ground checks with physics overlap sphere, and fine-tune collider properties and gravity for stable player movement.
Implement an environment scanner to detect obstacles ahead and trigger height-based actions like step up, jump up, and climate action, using target matching to reuse animations across heights.
Explore obstacle height detection in a Unity parkour system by casting a height recast from five meters above the forward hit point, downward to measure obstacle height and guide actions.
The buckle controller selects parkour actions by obstacle height using mean height and max height thresholds, enabling step up or jump up actions, with scriptable actions and an asset menu.
The section demonstrates an extensible parkour action system in Unity, letting you add actions from a menu, enter details, and assign animations, with a challenge to add more from maximal.
Implement ledge movement in Unity parkour, stopping forward motion at a ledge while allowing side and backward movement, and enable jumping from the ledge with the jump input.
Improve ledge movement by using three recasts to check the ledge width, preventing feet from leaving the ledge, and introducing a reusable three-recast physics utility with origin and visualization.
Learn how to stop player input during the landing animation using a state machine behavior to toggle has control, and adjust jump down timing to prevent double jumps off ledges.
Enable auto jumps in a Unity parkour system by using a ledge height threshold and a drop height limit to auto jump low ledges; high ledges still require jump input.
Build and visualize the climbing network by implementing a client point system with neighbor connections, two-way and one-way types, auto back-connection creation, and forward-vector visualization for outward ledges.
Implement ledge-to-ledge jumps in a Unity parkour system by importing hop animations (up, down, left, right) and configuring offsets. Map input directions to neighboring ledges for seamless transitions.
In this course, you’ll learn how to create a third-person parkour & climbing system in Unity and C# while learning important gameplay programming concepts.
We’ll create an advanced third-person controller that can traverse dynamic environments with parkour. It’s a common system in modern-day games like Assassins Creed, Watch Dogs, etc. But the mechanic itself has been there in lots of older games like Zelda Ocarina of Time. So it’s a perfect project for learning core game programming skills.
So we’ll be building all this step by step from scratch. We’ll start by making basic a third-person controller. We’ll not use any assets for it, we’ll build this from scratch because it’s a good way to learn the fundamentals of gameplay programming. and then we’ll implement the parkour system on top of it. We’ll create an environment scanner for detecting obstacles in front of the player and we’ll make the player perform different parkour actions dynamically based on the height and type of the obstacle. We’ll look at advanced animation techniques like target matching that will allow us to adapt the same animation to obstacles of different heights.
We’ll architect the parkour actions using scriptable objects in Unity so that they’re data-driven & can be created & modified by designers without touching the code. We'll also create a climbing system similar to the one that you see in games like Assassin's Creed.
By the end of this course, you’ll not just create this parkour system. But you’ll also learn essential game development skills and techniques that you can use throughout your career.