In this course we will create a 2D game called “Whack a Zombie” from start to finish. During the course of this project we will learn how to set up the project and code all the game mechanics and interactions in Visual Studios using C# and we will finish the project with adding some additional polish to it also. By the end of the project you will have a thorough understanding of the fundamentals of developing games using the Unity game engine.
Intoduction
Setting up the project.
Getting familiar with the Unity editor.
Core Gameplay
Understanding the Update and Start functions.
Understanding private and public variables.
Looking at how to generate random numbers.
Creating a game manager class.
Discussing how we will structure the game manger class.
Discussing the zombie movement logic.
Implementing code and logic for zombies.
Discussing and understanding raycasts and rays.
Setting up colliders in our scene and discuss their importance in detecting raycast hits.
Creating our player input class.
Learning to get mouse input.
Using Debug lines to test progress.
Understanding the use of tags for our game objects.
Furthering our understanding of raycasts and colliders.
Writing the code for killing our enemy.
Understanding the use of GetComponent.
Setting up a life counter and a score counter.
Setting up our game over condition.
Start working on the UI for our game.
Setting up the UI for our life.
Setting up the UI for our score.
Wiring up our UI from the last part.
Wiring up the score UI.
Wiring up the life UI.
Setting up our game over screen.
Wiring up our game over screen.
Increasing the game difficulty with time.
Learning how to work with Unity buttons.
Discussing how we will set up the scene transitions.
Working with Scene Management.
Implementing restart for the game.
Learning about build index.
Creating main menu scene.
Setting up our main menu scene.
Adding Polish
Setting up the audio for the game.
Setting up cross scene audio.
Adding smash sounds to our enemy hits.
Working with sprite sheets and slicing.
Working with the Animator and the Animator Controller.
Creating animations.
Transitioning between animations.
Screen view vs world view.
Camera Shake.