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

Technical requirements

To get started:

  1. Download or clone the GitHub repository at https://github.com/PacktPublishing/C-Design-Patterns-with-Unity-First-Edition.
  2. Open the Ch_16_Starter project folder in Unity Hub.
  3. In Assets > Scenes, double-click on SampleScene.

The starter project for this chapter is a top-down arena where you control a simple player capsule and try to collect all the red items in the scene. You can run forward and back using vertical key inputs, rotate using horizontal key inputs, and even jump if the mood strikes you.

As for the scripts:

  • PlayerBehavior.cs is the client class for this example. Its only job is to hold a reference to a MovementController instance (which we’ll switch later on) and call its Move and Jump methods in FixedUpdate.
  • MovementController.cs is responsible for the default player locomotion – moving and rotating smoothly using the WASD or arrow keys and jumping using the Space...