We may earn an affiliate commission when you visit our partners.
Take this course
Pete Jepson

If you want to make impressive shooter games then this course is for you. I will be showing you step by step how to make a third person shooter game that I call Vampire's Lair. This is full on arcade action, inspired by the original DOOM game. This will help you develop the skills necessary to go onto make your own awesome games.

Read more

If you want to make impressive shooter games then this course is for you. I will be showing you step by step how to make a third person shooter game that I call Vampire's Lair. This is full on arcade action, inspired by the original DOOM game. This will help you develop the skills necessary to go onto make your own awesome games.

There will be coding and design tasks throughout that will challenge your knowledge of game design and help you to develop professional skills. If you just want to design games for a hobby or if you are looking to embark on a career in the gaming industry this course will help you get there. Plus it'll be a lot of fun too.

Covered in this Unity course:

  • Using Unity 2019

  • Setting up a third person character

  • Pickups for changing ammo/weapon types

  • Using single shot, rapidfire, flamethrower and grenade launcher weapons

  • Spawning waves of enemies that target your player

  • Using pathfinding AI

  • Killing enemies with bullets, flames, grenades and exploding barrels

  • Impressive shader/particle systems to give your game a professional look

  • Setting up animation events to trigger functions in C#

  • Learn C# coding using real world coding activities

  • Setting up a Boss with a health bar

  • + Much More

(These principles can also be applied to first person shooter games)

Enroll now

What's inside

Learning objectives

  • Learn how to make third person shooter games
  • Raycasting and impact instantiation for weapons
  • Change shaders dynamically during gameplay
  • Create endless waves of vampires that spawn into the game
  • Control animations through layerweights and layermasks
  • Implement animation events to trigger custom functions
  • Easy to learn coding using c#
  • Build a solid understanding of unity by creating an actual working video game
  • Develop transferrable skills that can be applied to first person shooters and other types of games

Syllabus

The Main Player
Introduction
The Main Player - Introduction
Create a basic 3D scene
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Uses Unity 2019, which is a widely adopted version of the engine, providing a stable platform for learning game development principles
Covers pathfinding AI, which is essential for creating engaging and dynamic enemy behaviors in games
Explores shader and particle systems, which are important for enhancing the visual appeal and creating a professional look for games
Teaches C# coding through real-world activities, which helps learners develop practical skills applicable to game development
Focuses on creating a third-person shooter, but the principles taught can be applied to first-person shooters and other game types
Requires installing Unity assets, which may require learners to seek out and download external resources to complete the course

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Building a unity third person shooter

According to students, this course offers a highly practical, hands-on approach to learning Unity by building a complete third-person shooter game from scratch. Learners frequently praise the project-based structure and the coverage of essential game mechanics like player control, various weapons, AI, and UI. However, some students note a significant challenge is that the course uses an older Unity version (2019), requiring manual updates for newer releases. The clarity of code explanations is also occasionally found to be rushed or lacking depth. It's generally viewed as a great way to create a working game prototype, though best suited for those with some prior Unity or C# familiarity.
Assumes some basic Unity or C# experience.
"While it says it's for all levels, I'd strongly recommend having basic C# and Unity editor familiarity first."
"Struggled early on as I had zero prior Unity experience. Had to supplement with other beginner tutorials."
"If you've never touched Unity before, this might be a bit overwhelming initially."
Effectively teaches fundamental shooter game elements.
"Excellent coverage of player control, different weapon types, and enemy AI."
"Learned a lot about implementing pickups, UI, and death mechanics."
"The sections on NavMesh AI and weapon systems were particularly helpful."
Learn by building a full working game.
"The best way to learn is by doing, and this course delivers by having us build a complete game step-by-step."
"Building the full shooter game was incredibly rewarding and cemented my understanding of core Unity concepts."
"I appreciated the project-based learning; it's much more effective than abstract lessons."
Some code parts can be hard to follow or rushed.
"The instructor moves very quickly through some coding sections without explaining the 'why' behind certain choices."
"Found myself pausing constantly to figure out what was happening in the scripts."
"Some code implementation felt like copy-pasting without deep understanding provided."
Course based on Unity 2019, requires updates.
"Major downside is the use of Unity 2019... Had to spend a lot of time updating scripts and features for Unity 2022."
"Be prepared to troubleshoot compatibility issues if you're not using the exact Unity version from the course."
"Wish the course was updated for current Unity versions; it makes following along harder."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Unity Third Person Shooter with these activities:
Review C# Scripting Fundamentals
Strengthen your C# scripting foundation to better understand the game logic and implement new features effectively.
Browse courses on C# Scripting
Show steps
  • Review basic C# syntax and data types.
  • Practice writing simple scripts in Unity.
  • Study examples of C# code used in games.
Review 'Unity in Action, Third Edition'
Gain a deeper understanding of Unity's core concepts and workflows by studying a comprehensive Unity development book.
Show steps
  • Read the chapters relevant to the current module.
  • Experiment with the code examples provided.
  • Take notes on key concepts and techniques.
Implement Raycasting for Weapon Accuracy
Improve your understanding of raycasting by implementing it in a practice project to enhance weapon accuracy.
Show steps
  • Create a simple scene with targets.
  • Write a script to cast rays from the weapon.
  • Detect collisions with the targets.
  • Visualize the raycast for debugging.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Review 'Game Programming Patterns'
Learn about common game programming patterns to improve the structure and maintainability of your code.
Show steps
  • Read a chapter on a relevant design pattern.
  • Identify opportunities to apply the pattern in your project.
  • Implement the pattern and test its effectiveness.
Create a Weapon Showcase Video
Solidify your knowledge of weapon systems by creating a video showcasing the different weapons and their functionalities.
Show steps
  • Record gameplay footage of each weapon.
  • Edit the footage to highlight key features.
  • Add commentary explaining the weapon mechanics.
  • Share the video with the course community.
Expand the Game with a New Enemy Type
Apply your knowledge of AI and enemy behavior by creating a new enemy type with unique attack patterns and movement.
Show steps
  • Design the new enemy's behavior and abilities.
  • Implement the AI using Unity's NavMesh system.
  • Create animations for the enemy's actions.
  • Integrate the new enemy into the game's spawn system.
Contribute to a Unity Asset on Github
Deepen your understanding of Unity and collaborate with other developers by contributing to an open-source Unity asset.
Show steps
  • Find a relevant open-source Unity project.
  • Identify a bug or feature to work on.
  • Fork the repository and make your changes.
  • Submit a pull request with your contributions.

Career center

Learners who complete Unity Third Person Shooter will develop knowledge and skills that may be useful to these careers:
Indie Game Developer
An indie game developer works independently or as part of a small team to create and publish their own video games. This requires a broad range of skills, including game design, programming, art, and project management. This course provides the practical experience needed to create a complete and polished game, as demonstrated by the third-person shooter project. Learning C# coding, implementing weapon systems, designing levels, and creating enemy AI are all essential skills for an indie game developer. Aspiring indie developers may find this course useful to learn all aspects of game development.
Unity Developer
A Unity developer specializes in creating games and other interactive experiences using the Unity game engine. This course provides complete training in Unity, covering topics such as setting up a third-person character, implementing weapon systems, creating enemy AI, and designing levels. By building a complete third-person shooter game, students will gain the practical skills and knowledge needed to excel as a Unity developer. This course will help Unity developers apply what they learn immediately.
Gameplay Programmer
A gameplay programmer implements the game mechanics, player controls, and artificial intelligence that bring a game to life. This role requires strong coding skills and a deep understanding of game design principles. With its strong focus on C# coding and implementing features like weapon systems, enemy AI, and player controls, this course provides practical experience that is highly relevant to a gameplay programmer. The course's emphasis on creating a third-person shooter game, complete with challenges, may allow one to hit the ground running as a gameplay programmer.
Game Programmer
A game programmer is responsible for writing the code that brings a video game to life. They work on various aspects of the game, including gameplay mechanics, artificial intelligence, user interfaces, and graphics. With its focus on C# coding and practical game development tasks, this course will allow creation of a fully functional third-person shooter game, providing hands-on experience that is highly valuable to a budding game programmer. Learning to implement weapon systems, enemy AI, and player controls in Unity may be very helpful for a new game programmer.
Level Designer
A level designer is responsible for creating the environments and layouts within a video game. This involves designing spaces that are both visually appealing and functionally effective for gameplay. This course helps build a solid understanding of level design principles, as demonstrated by the section on level design, which helps create a fully realized 3D environment. Learning to set up navigation meshes and spawn enemies as covered in this course may allow the level designer to create challenging and engaging combat scenarios. This course may equip aspiring level designers with the practical skills needed to create immersive and compelling game worlds.
Game Designer
A game designer conceptualizes and designs the gameplay, rules, and story of a video game. This role involves creating engaging and immersive experiences for players. This course, which teaches how to build a third-person shooter, helps build a foundation in understanding game mechanics and level design, directly applicable to a game designer's toolkit. Specifically, the course covers implementing weapons, enemies, and user interfaces, all essential components a game designer must consider. The course's focus on using Unity and C# may be very useful to aspiring game designers.
Artificial Intelligence Programmer
An artificial intelligence programmer specializes in creating the AI systems that control the behavior of non-player characters (NPCs) in a game. This role requires a strong understanding of algorithms, pathfinding, and decision-making processes. Within this course, the 'Vampires' section details the creation of enemies using pathfinding AI, essential knowledge for an AI programmer. Learning how to set up a NavMesh and script AI behavior using C# may be very helpful for creating believable and challenging enemies. The hands-on experience gained from this course directly translates to the skills required for an artificial intelligence programmer.
Technical Artist
A technical artist bridges the gap between art and programming, ensuring that the artistic vision of a game can be realized within the technical constraints of the game engine. This often involves creating shaders, optimizing assets, and implementing visual effects. This course can be very helpful because it covers topics like setting up animation events to trigger functions in C#, as well as using impressive shader and particle systems to give a game a professional look. These skills are crucial tasks for technical artists.
Mobile Game Developer
A mobile game developer creates games specifically for mobile devices, such as smartphones and tablets. While this course focuses on a third-person shooter for desktop platforms, the fundamental game development principles and C# coding skills learned are transferable to mobile game development. Learning how to implement game mechanics, design levels, and create user interfaces in Unity will prove very helpful when adapting these skills to the mobile platform. A mobile game developer must know how to develop games.
Augmented Reality Developer
An augmented reality developer creates experiences that overlay digital content onto the real world using devices like smartphones or AR glasses. The knowledge of Unity, C# scripting, and 3D environment design gained from this course can be a solid foundation for AR development. The principles of creating interactive elements, managing user interfaces, and optimizing performance, all covered in the course, are relevant to Augmented Reality development. While AR has its unique requirements, mastering the fundamentals taught may dramatically improve skill as an augmented reality developer.
Virtual Reality Developer
A virtual reality developer creates immersive experiences for virtual reality platforms. The skills learned in this course, particularly those related to Unity and C# programming, are directly applicable to VR development. Furthermore, the topics covered, such as 3D movement and spatial awareness, may also be very helpful. This course may allow one to build a foundation for creating engaging VR experiences. The similarity between the development of first-person shooters and VR games is very high.
Simulation Developer
A simulation developer creates software that simulates real-world environments or systems for training, research, or entertainment purposes. While this course focuses on game development, the underlying principles of 3D modeling, physics simulation, and user interaction are applicable to simulation development. Learning how to create realistic environments and implement interactive elements in Unity may be very helpful when building simulations. By mastering the skills taught in this course, one may be able to create realistic simulations.
C Programmer
A C# Programmer specializes in developing applications using the C# programming language. This course provides hands-on experience in C# coding through real-world coding activities, helping build a solid foundation in C# programming. By creating a third-person shooter game, learners gain practical experience in using C# to implement game mechanics, AI, and user interfaces. If you're looking for a practical introduction to C# coding, this course may be an excellent starting point.
Software Engineer
A software engineer applies engineering principles to the design, development, maintenance, testing, and evaluation of computer software. This course's focus on C# and game development may be helpful, offering practical experience in designing and implementing complex systems. The course's emphasis on creating a fully functional third-person shooter game may be useful to understanding the software development lifecycle. The coding and design tasks are essential for budding software engineers.
Software Developer
A software developer designs, develops, and tests software applications. While not specific to gaming, the C# coding skills learned in this course are transferable to a broader range of software development roles. This course provides practical coding experience through real-world activities, helping build a strong foundation in programming principles. The skills gained may be very helpful for aspiring software developers who want to learn by creating an actual working application.

Featured in The Course Notes

This course is mentioned in our blog, The Course Notes. Read one article that features Unity Third Person Shooter:

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Unity Third Person Shooter.
Provides a comprehensive guide to Unity development, covering topics from basic concepts to advanced techniques. It is particularly useful for understanding the Unity editor, scripting, and game mechanics. It serves as a valuable reference throughout the course and beyond, offering practical examples and best practices for building games in Unity. This book is commonly used as a textbook at academic institutions.
Explores common design patterns used in game development, providing solutions to recurring problems. It is helpful for understanding how to structure your code for maintainability and scalability. While not specific to Unity, the principles discussed are applicable to any game engine. This book is more valuable as additional reading than it is as a current reference.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser