Discover practical design propositions to resolve game programming challenges in Unity
Key Features:
- Get an overview of Unity engine architecture and coding model
- Build a complete racing game using software design patterns and understand how to implement them in Unity
- Download the source code of the complete prototype demonstrating each of the software patterns used
Book Description:
Unity's coding model and architecture require knowledge of common software design patterns. To optimally code a game in Unity, in the same way you do in other engines, you'll have to adapt to programming techniques that involve the use of design patterns.
In this second edition, you'll get to grips with using design patterns with the help of supplemented code examples based on actual implementations of game mechanics and systems of a playable racing game prototype. You'll be introduced to the core principles of reusable software patterns and how to employ them to build components efficiently. Some notable additions include a game design document (GDD), a Unity programming primer, and the downloadable source code of a complete prototype.
You'll start by learning about the overall design of the core game mechanics and systems that you'll be building throughout this Unity book, and discover tried-and-tested software patterns to code essential components of a game in a structured manner. You'll also find out how you can use classic design patterns to utilize Unity's unique API features. Finally, you'll identify the negative impacts of bad architectural decisions and understand how to overcome them with simple but effective practices.
By the end of this book, you'll be able to develop Unity games in a structured, scalable, and optimized way.
What You Will Learn:
- Structure professional Unity code using industry-standard development patterns
- Identify the right patterns for implementing specific game mechanics or features
- Develop configurable core game mechanics and ingredients that can be modified without writing a single line of code
- Review practical object-oriented programming (OOP) techniques and learn how they're used in the context of a Unity project
- Build unique game development systems such as a level editor
- Explore ways to adapt traditional design patterns for use with the Unity API
Who this book is for:
This book is for Unity game developers who want to learn industry standards for building Unity games. Knowledge of the Unity game engine and programming in the C# language is expected. If you're only just starting your journey to becoming a Unity game developer, this book is not suitable for you.