This is a free course.

Unity is a game development engine that allows you to build powerful 2D and 3D games for a range of platforms and devices including Mac, Windows, iPhone, Android, game consoles, and even virtual reality devices! You can start using Unity for free to build 2D or 3D games. Here you will find a range of free tutorials to help you get started with Unity. These tutorials will show you how to build your own 2D and 3D games in Unity using the C# programming language.

By learning how to develop games in Unity using the C# programming language you will also learn skills in this language that you can take to desktop application design and mobile application design (and there are plenty of tutorials here for that!).

2D Platformer Game Design Tutorials (Unity 2021)

These tutorials will guide you through designing and developing a 2D platformer game in Unity.

  • Coming soon :)


2D game design tutorials (older tutorials)


These tutorials will guide you through designing and developing a 2D game in Unity by working on a 2D platform game project as shown in the image above.

  1. Introduction to 2D game design in Unity
  2. Adding assets to your 2D game
  3. Adding physics and colliders to your 2D game project
  4. Physics2D materials and more 2D colliders
  5. More Physics2D materials
  6. Creating prefabs for reusable assets
  7. Using sorting layers to arrange assets in a scene
  8. Organising and grouping assets in the hierarchy
  9. Introduction to C# scripting and collision detection
  10. Moving the player with C# code
  11. Making the player jump with C# code
  12. Jumping with ground check
  13. Changing the player sprite
  14. Creating animations for the player sprite
  15. Setting up the player animation controller
  16. Controlling player animations with code
  17. Flipping the player with code
  18. Making the camera follow the player with code
  19. Stopping the player from sticking to the edge of platforms
  20. Setting up a fall detector
  21. Adding checkpoints in the game
  22. Respawn the player
  23. Setting up a Level Manager
  24. Adding a delay to respawn
  25. Particle systems
  26. Adding collectables and scoring
  27. Creating a UI to display the score
  28. More coming soon!

3D game design tutorials


These tutorials will help you develop the skills to build your own 3D games with immersive and detailed worlds like the one shown in the image above.

  1. Introduction to 3D game design in Unity
  2. Creating and editing 3D shapes in Unity
  3. Exporting 3D models from Maya into Unity
  4. How to apply materials, shaders and textures to objects in Unity
  5. Adding terrain, trees and water to your game
  6. Cameras in Unity
  7. Lighting in Unity
  8. Adding skyboxes to your 3D game environment
  9. Adding fog and lens flares to a scene in Unity
  10. Character controllers in Unity
  11. Advanced camera techniques in Unity
  12. Adding a PIP map effect in Unity
  13. Adding and using layers in Unity
  14. Scripting in Unity with C#
  15. Variables and data types in C#
  16. Operators in C#
  17. Conditional statements in C#
  18. Loops (iteration) in C#
  19. Creating and using methods (functions)
  20. Keyboard input in Unity
  21. Transforming objects using scripts
  22. Mouse input in Unity
  23. Create a rolling ball game with force and gravity
  24. Accessing other objects and modifying their components
  25. Collision detection in Unity
  26. Raycasting
  27. Graphical User Interfaces (GUIs)
  28. Adding sound to your scene
  29. Animating 3D objects in Unity
  30. Particle systems in Unity

Other resources