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

Leveraging Unity’s ObjectPool class

If you’re using Unity 2021 or later, you have access to a host of new classes that take out some of the boilerplate code we had to write ourselves in the previous sections. Unity’s ObjectPool<T0> class is a stack of pooled objects that are optimized and managed for reusability – your job is to fill out the pooling actions and Unity takes care of the rest.

Since we’re already familiar with the Object Pool structure, let’s focus on the parameters of the ObjectPool constructor:

  • createFunc is used to create a new instance of the pooled object.
  • actionOnGet is called when a pooled object is taken out of the pool.
  • actionOnRelease is called when a pooled object is returned to the pool and can contain resetting or cleanup logic.
  • actionOnDestroy is called when the pool has reached the maximum size and a pooled object can’t be returned.

Each of these parameters...