The Complete Unity Guide 3D - Beginner to RPG Game Dev in C#
Learn Unity practical way, build 3 games. Start with fundamentals and finish with an RPG game. Using Unity 2020 and C#
What is Unity?
Unity is a cross-platform engine. The Unity editor is supported on Windows, macOS, and the Linux platform, while the engine itself currently supports building games for more than 25 different platforms, including mobile, desktop, consoles, and virtual reality.
What we are going to build?
The course is covering the development of 3 games. Starting with basic concepts explained on a simple game and finishing with more advanced concepts by creating an RPG sandboxed game. The course is covering a full deep explanation of methods and related mathematics concepts.
Project 1 (Evade the cubes)
The first part of the course is covering basic concepts. Students will get familiar with the Unity editor and environment.
Project 2 (Platform Survival)
The second part of the course is focused on the physic system.
Project 3 (Rpg Adventure)
The last part of the course is covering more advanced concepts and the development of sandboxed RPG game.
Basic knowledge of C# or any other Object Oriented programming language
Installing Unity
Getting More Familiar with Unity
Parenting Gameobjects
About the camera
Components
Project Preview
FREE PREVIEWCreate Player
Material and Light
Lighting
First Coding
Update & fps
Init lifecycle function
Update lifecycle functions
Stats and Enemy Object
Get reference to own component
Get Access To other component
Get component through editor
Problems with Awake
Get Horizontal and Vertical axis
Apply Movement
Fix movement speed
Scale plane
Add Walls
Restrict movement of the player
Fix Restrict Movement
Enemy Movement
Prefabs
Create Gameobject from the script
Random X Position
Destroy Game Object
Destroy enemy on collision
Receive damage on hit
Decrease health of the player
Create Canvas HUD
Provide value to health text
Catch Enemy
Create catch enemy from script
Methods Refactor
Change behaviour of catcher
Restart the game
First Project Assignment
First Project Solution
Project Preview
FREE PREVIEWInit Second Project
Change position of the player
Move with translate
Normalize Vector
AI - Normalize
Changing the camera
Adds rigid body component
Get RB in script
Rigidbody Explanations
Elevators
Elevators Movement
Wait coroutine
Coroutine in Start
Elevator Refactor
On Trigger Enter
Tags
Change parent of player
Elevator offset
Apply elevator offset
Add rigidbody to elevator
Camera Position
From To Rotation
Rotate Towards
Look Backward direction
AI Dot Product
Rotation Refactor
Add Enemy
Enemy follow target
Improve following of player
Spawn Manager
Destroy and Spawn new enemy
Spawn Enemy waves
Powerup
Get speed from powerup
Powerup Coroutines
Add more power to player
Create circle game object
Draw circle method
Draw complete circle
AI - Draw Circle
Add circle to enemy
Add Push range to enemy
Game Manager and Canvas
Spawn enemy on button click
Restart the game + Disable canvas
On Game Start
Finish Project 2
Project Assignment
Project Solution
Project Intro
FREE PREVIEWSection Intro
FREE PREVIEWProject Setup
Learn by inspecting other projects
Simple movement
Add Rigidbody
Add rotation
Explain Rotate Towards
Follow Camera
Camera Rotation with Player
Rotate Camera Refactor
AI - Lerp
AI - Rest of rotation
AI - Lerp Additional
Move in direction of camera
AI - Move in direction of the camera
Revert to normal movement
Section Introduction
FREE PREVIEWCinemachine
Move camera while holding mouse
Input Manager
Rotate in direction of the camera
Move in direction of the camera
Add Character controller
Add Character model
Character controller properties
Add player input
Refactor Move Input
Section Intro
FREE PREVIEWAnimator Start
New Anim Controller
Change Parameter from Script
Controlling forward speed
Control Acceleration
Applying rotation
AI Code Debugging
AI Rotations
Smooth Rotation
Oposite direction rotation
Change animator settings
Camera controller refactor
Animator Blend Tree
Small Animator Fix
Add gravity
Section Intro
FREE PREVIEWCreate bandit
Player Instance
Detection Range
Draw Solid Arc
AI Draw solid arc
Dot product to detect player
AI Dot Product to detect player
Section Intro
FREE PREVIEWGet player position
Nav Mesh Agent
About the navmesh
About navmesh part 2
Stop the pursuit
Section Intro
FREE PREVIEWGo back to original position
In Pursuit Animation Parameter
Near base parameter
Fix Line Endings
Add Enemy animations
Enemy Controller
Move mesh agent into enemy controller
Player Scanner
Section Intro
FREE PREVIEWSetup attacking distance
Attack parameter
Attack animation
Refactoring of enemy controller
Sword Stance
Fix Attack distance
Go back to origin rotation
Attack Input
Improving Attack Input
Melee Attack Animator
Damageable Script
Bandit Behaviour Refactor
Fixing initial walk animation
Section Intro
FREE PREVIEWWeapon Prefabs
Add Melee Weapon script to swords
Adding melee weapon to player
Fixed Update Follow
Melee detection range
Rotate to target
Small refactor of bandit behaviour
Attack points on weapon
Drawing the ray
AI Spheres
Section Intro
FREE PREVIEWAnimation Attack Events
Animation Interface
Cast sphere colliders
Add Collider to enemy
Check for damage
Check for correct layer
AI - Layer Mask
AI - Int32 in C#
Damageable Partial class
Draw Hit Angle
Specify damage data
Check angle between
Damage message receivers
Message receiver interface
Invulnerability time
Set bandit animation trigger
Moving animator from bandit to enemy
Hurt Animation
Dead animation
Replace with Ragdoll start
Ragdoll Prefab
Replace with Ragdoll Implementation
Particle System
Dissolve
Section Intro
FREE PREVIEWQuest NPC
Quest & Quest manager
Designing quests
Opening JSON file
Json Wrapper
Explaining Using statement
Unique IDs
Assigning quest to quest giver
Quest Log
Section Intro
FREE PREVIEWMouse over collider
Clickable & Cursor image
Display Cursor
Raycast cursor hit
Check quest giver tag
Check Distance between NPC
Set talk in player input
Section Intro
FREE PREVIEWDialog Structure
Dialog Manager + UI
Adding more UI elements
Static player input
Activating Dialog UI
Adding option click target
Section Intro
FREE PREVIEWGet player and npc in dialog manager
Stop Dialog
Display welcome text
Dialog Option List UI
Create dialog Option
Button Option Indentation
Hide welcome text
Clear Dialog Options
Sync dialog options
Register click handler
Display NPC answer
Trigger Dialog Quit
Add Quest to quest log
Damage receiver in quest manager
On receive message improvement
On receive message more info
Check quest objective
Check for enemy UID
Changes in bandit prefabs
New quest giver and quest
Section Intro
FREE PREVIEWPlayer Stats
Message receiver in stats
Check for enemy layer and get exp
Gain experience functionality
Get exp from the quest
Section Intro
FREE PREVIEWItem spawner
Trigger Item Spawner
Inventory Manager
On item pickup event
Add On Item pickup to manager
Inventory UI
Inventory Slot
Place item to slot
Add Item from spawner + UI slot names
Use Item + Slot click handler
Equip Weapon
Equip weapon fixes
Add melee weapon to enemy
Receive damage from enemy
Set target layer on the weapon
Creates HUD UI
Hud manager
Section Intro
FREE PREVIEWPlayer death animation
Cache animation State
Stop input blocking
Block player input movement and attack
Start Respawn
Set respawning value
Reset the health
Delay respawn animation
Stop bandit pursuit
Check if clicking UI element
Section Intro
FREE PREVIEWRandom Audio Player
Sound assets
Swing Sound
Apply sounds to all weapon
Impact sound & ragdoll prefab fix
Footfall parameter curve
Add footfall sound to the player
Running sound finish
Section Intro
FREE PREVIEWWorking on the terrain
Practicing terrain
Main World Terrain p1
Main world terrain p2
Working on textures
Placing the road
284 Trees and grass
Lighting settings
Adding buildings
Last testing
Create Build
Course Ending
Filip Jerga
Every video contains a discussion where you can create a post describing an issue. The instructor responds usually within 1 business day.
Within 30 days from the purchase, you can ask for a full refund. No questions asked. Your happiness is our priority.
Of course not! Every lecture is committed (explained in the introduction section). You can start watching at any lecture, just download the correct version of the project attached to the lecture resources.
Single Course Access
$29.00
Access to this course only.
Get started nowMonthly Membership
$19.00 / month
Cancel Anytime!
Get started nowAnnual Membership
$190.00 / year
Cancel Anytime!
Get started now