Book Image

Learning Design Patterns with Unity

By : Harrison Ferrone
Book Image

Learning Design Patterns with Unity

By: Harrison Ferrone

Overview of this book

Struggling to write maintainable and clean code for your Unity games? Look no further! Learning Design Patterns with Unity empowers you to harness the fullest potential of popular design patterns while building exciting Unity projects. Through hands-on game development, you'll master creational patterns like Prototype to efficiently spawn enemies and delve into behavioral patterns like Observer to create reactive game mechanics. As you progress, you'll also identify the negative impacts of bad architectural decisions and understand how to overcome them with simple but effective practices. By the end of this Unity 2023 book, the way you develop Unity games will change. You'll emerge not just as a more skilled Unity developer, but as a well-rounded software engineer equipped with industry-leading design patterns.
Table of Contents (23 chapters)
21
Other Books You May Enjoy
22
Index

Implementing shallow and deep object copying

Imagine you’re building role-playing game (RPG) where a truly ungodly variety of monsters can pop up in your path and wreak havoc. Your project already uses a base enemy class with properties for the enemy’s name, damage, and battle cry, you’ve already created several enemy subclasses, and there can be multiple instances of each enemy. Your goal is to build a system where new enemies are created without having to initialize new objects, but where you can still configure their properties at runtime. You also need to future-proof your solution by handling any reference properties your enemy classes need later on, which means deep and shallow copying.

Adding a prototype interface

Our first task is creating an interface with cloning methods that all cloneable data structures will eventually implement. The official pattern only has one cloning method, but since we can either shallow or deep clone C# objects, let...