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

Strategies the Unity way

When it comes to adapting the Strategy pattern to Unity, your first instinct may very well be to jump right into MonoBehaviours.

While this is perfectly fine for the context class, attaching individual concrete strategies as components on a GameObject and passing them to a context class gets a little messy. That’s not to say you can’t do it that way, but ScriptableObjects shine in this kind of delegation capacity, especially when the strategies need data injected into them from the context and when the strategies have specific data they need to store.

Going the ScriptableObject route also opens possibilities for in-game testing, emergent design, and creating a variety of strategies as assets that you can drag and drop in the Editor. The starter project already has three characters in the scene, which makes it a perfect fit for applying different behavior strategies at runtime.

Upgrading to ScriptableObjects

In the Scripts folder...