We may earn an affiliate commission when you visit our partners.
Course image
Jingtian Li

This course is the third installment of the Complete Game Development Series and is aimed at covering advanced topics of Unity, and mobile game development.

Read more

This course is the third installment of the Complete Game Development Series and is aimed at covering advanced topics of Unity, and mobile game development.

Students will learn how to make a mobile project and set up the testing environment. The modular level creation workflow is then applied to build the level of the game and the lighting. Touch screen-based player controller, along with the camera viewing, and follow control is implemented first, followed by many gameplay systems like inventory, health, and damage system, generic team ID, AI perception, AI behavior Tree, projectiles, ability system, shop system, UI management, level management, and more.

The project focuses on implementing independent gameplay systems and making them work together beautifully. Many advanced C# features like interfaces and delegates are utilized to help improve the extensibility of the code as well as reduce code duplication, and dependency. Programming patterns like recursion, tree, and singleton, are utilized to produce cleaner code. Advanced Unity features like scriptable objects are introduced to achieve better data storage and retrieval.

The build processes to iOS and Android are covered at the end of the tutorial, and students walk away with a complete mobile game, as well as extended knowledge of Unity, C# and game development.

Enroll now

What's inside

Syllabus

Introduction and Setup
Introduction
02 Create the Project
03_Setup Unity Remotes with iOS
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Covers advanced Unity topics, which is beneficial for developers looking to deepen their understanding of the engine and its capabilities
Focuses on mobile game development, which is ideal for those targeting iOS and Android platforms using Unity
Utilizes advanced C# features like interfaces and delegates, which helps improve code extensibility and reduce code duplication
Employs programming patterns like recursion, tree, and singleton, which leads to cleaner and more maintainable code
Introduces advanced Unity features like scriptable objects, which helps achieve better data storage and retrieval within the game environment
Covers the build processes for both iOS and Android, which is essential for deploying games on mobile devices

Save this course

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

Reviews summary

Advanced mobile game systems in unity

According to learners, this course is a comprehensive deep dive into building advanced gameplay systems for mobile. Students particularly highlight the focus on practical project application and learning clean code architecture using advanced C# concepts like interfaces and delegates. The course covers a wide range of topics, including touch controls, inventory, health, AI, abilities, and the build process. While many find it highly valuable for intermediate to advanced developers looking to build a complete game, some reviewers mention the difficulty level can be quite high, especially sections like the AI behavior tree. Overall, it's seen as an excellent course for solidifying skills and learning to integrate complex systems.
Covers a wide range of essential gameplay systems.
"This course covers so many essential systems for a mobile game."
"Building the inventory and ability system was a highlight."
"It covers all the core systems you'd expect in a modern mobile game."
"I learned how to implement inventory, health, AI, and more from scratch."
Strong emphasis on building a complete, working game project.
"Absolutely loved this course. It's a deep dive into building a real game."
"The practical project approach is excellent for learning by doing."
"I walked away with a complete mobile game project."
"This course is fantastic for intermediate Unity developers! Building the full game..."
Teaches building systems with clean, extensible C# code.
"Building the full game system by system using interfaces and delegates really solidified my understanding of clean code architecture."
"The focus on programming patterns like singleton and using scriptable objects correctly was invaluable."
"The code structure using C# principles is a major plus of this course."
"I appreciated learning how to structure complex systems using advanced C# features."
Some learners encountered issues with setup or compatibility.
"Good content, but I ran into a few version compatibility issues with Unity and the assets provided."
"Was able to figure it out eventually, but it caused some frustration."
"Had trouble debugging issues that came up."
"Setting up the environment and assets took longer than expected."
The AI section, specifically behavior trees, was found challenging.
"The AI section was particularly strong [positive context], but the behavior tree section was a bit dense..."
"The behavior tree was complex but well explained [mixed context]."
"Got lost in the advanced C# patterns and behavior trees."
"The AI part required significant focus and rewatching."
Can be difficult, particularly for learners without prior experience.
"Found this course very challenging, maybe more for advanced users than intermediate."
"Too difficult for me. I took the previous courses in the series, but this jumped significantly in complexity."
"The content itself is good, but it's definitely not for beginners."
"I struggled with some sections and had to spend extra time understanding concepts."

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 Mobile Game Development - Exterminator with these activities:
Review C# Fundamentals
Strengthen your understanding of C# fundamentals, which are essential for scripting in Unity and implementing game logic.
Show steps
  • Review basic syntax and data types.
  • Practice writing simple C# programs.
  • Study object-oriented programming concepts.
Practice with Unity's UI System
Familiarize yourself with Unity's UI system to effectively create and manage in-game menus, health bars, and other interactive elements.
Show steps
  • Create a simple UI layout with buttons and text.
  • Implement basic UI interactions using C# scripts.
  • Experiment with different UI components and layouts.
Review 'Game Programming Patterns'
Study common game programming patterns to improve the structure and maintainability of your Unity game code.
Show steps
  • Read about the Singleton pattern and its uses.
  • Implement the Observer pattern in a small project.
  • Study the State pattern and its application to AI.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Implement Basic AI Behaviors
Practice implementing basic AI behaviors like patrolling, chasing, and attacking to reinforce your understanding of AI behavior trees.
Show steps
  • Implement a patrolling behavior for an enemy.
  • Create a chasing behavior that triggers when the player is in sight.
  • Add an attacking behavior when the enemy is close enough.
Document Your Learning Journey
Create a blog or journal to document your learning process, challenges, and solutions encountered during the course.
Show steps
  • Create a blog or online journal.
  • Write weekly summaries of what you've learned.
  • Share code snippets and solutions to common problems.
Expand the Exterminator Game
Extend the Exterminator game by adding new features, enemies, or levels to solidify your understanding of the course material.
Show steps
  • Brainstorm new features or content to add.
  • Implement the new features using the techniques learned in the course.
  • Test and refine your additions.
Review 'C# 8.0 and .NET Core 3.0 – Modern Cross-Platform Development'
Deepen your understanding of C# and .NET Core to improve your scripting skills in Unity.
Show steps
  • Read about the latest features in C# 8.0.
  • Explore the .NET Core framework and its capabilities.
  • Experiment with cross-platform development using .NET Core.

Career center

Learners who complete Unity Mobile Game Development - Exterminator will develop knowledge and skills that may be useful to these careers:
Mobile Game Developer
A Mobile Game Developer designs and develops video games specifically for mobile platforms such as iOS and Android. This often involves working with game engines like Unity and programming languages like C#. The Exterminator course helps build a strong foundation for this role by teaching students how to create a complete mobile game using Unity. Students work with touch screen-based player controllers, camera controls, gameplay systems like inventory, health, and damage, and AI. The course also covers build processes to iOS and Android platforms. Crucially, it emphasizes independent system implementation and the use of C# features like interfaces and delegates, all of which are essential skills for a Mobile Game Developer.
Unity Developer
A Unity Developer uses the Unity game engine to create interactive experiences, which may include video games, simulations, or other applications. They are proficient in C# and have a strong understanding of game development principles. The Exterminator course provides in-depth knowledge of Unity including creating a mobile project, setting up the testing environment, lighting, modular level creation and other advanced C# features. The material on scriptable objects is also valuable for a Unity Developer. By completing this course, aspiring Unity Developers become prepared to tackle complex projects and contribute effectively to a development team. Many employers demand experience with mobile platforms, and this course can satisfy that demand.
Gameplay Programmer
A Gameplay Programmer is responsible for implementing the mechanics and systems that make a game fun and engaging. This involves writing code to control character movement, AI behavior, and interactions between game elements. The Exterminator course includes the implementation of many gameplay systems like inventory, health, and damage system, generic team identification, AI perception, AI behavior trees, projectiles, ability systems, and more. This experience building and integrating these systems is directly applicable to the work of a Gameplay Programmer. By focusing on independent gameplay system implementation, the student prepares for the challenges of the Gameplay Programmer role.
AI Programmer
An AI Programmer specializes in creating the artificial intelligence that drives non-player characters (NPCs) and other dynamic elements within a game. This role often requires knowledge of behavior trees, pathfinding algorithms, and state machines. The Exterminator course includes the implementation of AI perception and AI behavior trees. You will learn important concepts by creating Node classes, Behavior Trees, and Blackboards. For a developer seeking to enter the field of AI, the knowledge gained from the material in this course is invaluable. Developing a solid understanding of AI is crucial for an AI Programmer.
Mobile Application Developer
A Mobile Application Developer creates applications for mobile devices, often using programming languages like C#, Java, or Swift. The Exterminator course is specifically designed for mobile game development using Unity and C#, and it covers the build processes for both iOS and Android. The work done to create touch screen-based player controllers and user interfaces is extremely relevant. The experience gained in this course helps build a foundation in mobile application development. The modular level creation workflow, lighting, and UI management are helpful components for a Mobile Application Developer.
Software Engineer
A Software Engineer designs, develops, and tests software applications. While the Exterminator course focuses on game development, it also introduces fundamental programming concepts and practices applicable to software engineering. The focus on implementing independent gameplay systems, reducing code duplication and dependency, and programming patterns like recursion, tree, and singleton, are all valuable skills for any Software Engineer. The advanced C# features and advanced Unity features taught in this course prepare students for the challenges of a Software Engineer role.
Tools Programmer
A Tools Programmer specializes in creating tools and editors that help other developers streamline their workflows. The Exterminator course may be useful as it encourages learning advanced Unity features such as scriptable objects which help achieve better data storage and retrieval. The course's introduction to modular level creation can also provide insights into how to design efficient tools for level design. This course may help one become more comfortable with extending the Unity editor and creating custom tools. A Tools Programmer may also use the knowledge of build processes to iOS and Android.
Technical Artist
A Technical Artist bridges the gap between artists and programmers, developing tools and workflows to improve the art creation process. The Exterminator course covers topics like modular level creation, lighting, and creating visual effects, which can be beneficial for a Technical Artist. It also covers important software engineering principles that may improve the ability to create effective tools. Further study will be required to become a Technical Artist, but this course may provide a first step in the effort.
Level Designer
A Level Designer creates the environments and layouts in which video game action takes place. They are responsible for crafting engaging and challenging gameplay experiences. The Exterminator course teaches modular level creation workflow which is directly applicable to the work of a Level Designer. This role involves a strong understanding of spatial design, game mechanics, and player psychology. This course may provide a starting point for building the skills needed to become a Level Designer. In particular, the modular workflow and lighting techniques are highly relevant.
Simulation Developer
A Simulation Developer creates simulated environments for training, research, or entertainment purposes. They leverage game engines like Unity to create realistic and interactive experiences. The Exterminator course covers many advanced topics in Unity, including mobile project setup, level creation, player control, and gameplay systems. This is closely related to the creation of a simulated environment. The course's exploration of touch screen-based player controllers and camera viewing controls is valuable for creating intuitive and realistic simulations. Completing this course may equip you with the core skills needed for a Simulation Developer role.
Augmented Reality Developer
An Augmented Reality Developer creates applications that overlay digital content onto the real world, often using mobile devices or specialized headsets. The Exterminator course focuses on mobile game development using Unity, including touch screen-based player control and camera control. This provides a solid foundation for AR development, which also involves creating interactive experiences for mobile platforms. The skills learned in setting up projects for iOS and Android are directly transferable. It helps develop the necessary skills for an Augmented Reality Developer.
Virtual Reality Developer
A Virtual Reality Developer creates immersive experiences for VR headsets, often using game engines like Unity or Unreal Engine. The Exterminator course provides valuable experience with Unity development, including creating interactive gameplay systems and implementing AI behavior. It also covers mobile project setup and build processes, which can be relevant for mobile VR applications. Though it does not focus specifically on VR, it may offer foundational skills and knowledge applicable to a Virtual Reality Developer.
UI/UX Designer
A UI/UX Designer focuses on creating user interfaces and user experiences for software applications and games. The Exterminator course includes UI management, covering the design and implementation of user interfaces within a mobile game. Experience designing effective interfaces for touch screen input may prove relevant. Further study focusing on design principles and user research may be required, but this course may provide a starting point for a UI/UX Designer.
Quality Assurance Tester
A Quality Assurance Tester is responsible for finding and reporting bugs in software or games to ensure a high-quality product. The Exterminator course provides insight into the development process of a mobile game in Unity. This can help a tester understand common issues and improve their testing strategies. The course also covers setting up testing environments, which is directly applicable to the role of a Quality Assurance Tester. This course may improve the skills needed for Quality Assurance Testing.
Project Manager
A Project Manager is responsible for planning, executing, and closing projects on time and within budget. The Exterminator course provides experience with the end-to-end development of a mobile game, from project setup to build processes. This may expose the student to common challenges and workflows in software development. The course on project management may improve the capabilities of a Project Manager.

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 Mobile Game Development - Exterminator.
Provides a catalog of well-established patterns for game development. It is particularly useful for understanding how to structure game code for maintainability and extensibility. The book covers patterns applicable to various aspects of game development, including gameplay, AI, and rendering. It valuable resource for improving code quality and reducing complexity in Unity projects.
Provides a comprehensive guide to C# and .NET Core, covering the latest features and best practices. It is useful for understanding the underlying technologies used in Unity scripting. While not directly focused on game development, it provides a solid foundation in C# and .NET, which are essential for advanced Unity development. This book is more valuable as additional reading to deepen your understanding of the tools used in the course.

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