Book Image

Mastering Unity 2D Game Development - Second Edition

By : Ashley Godbold, Simon Jackson
Book Image

Mastering Unity 2D Game Development - Second Edition

By: Ashley Godbold, Simon Jackson

Overview of this book

The Unity engine has revolutionized the gaming industry, by making it easier than ever for indie game developers to create quality games on a budget. Hobbyists and students can use this powerful engine to build 2D and 3D games, to play, distribute, and even sell for free! This book will help you master the 2D features available in Unity 5, by walking you through the development of a 2D RPG framework. With fully explained and detailed C# scripts, this book will show you how to create and program animations, a NPC conversation system, an inventory system, random RPG map battles, and full game menus. After your core game is complete, you'll learn how to add finishing touches like sound and music, monetization strategies, and splash screens. You’ll then be guided through the process of publishing and sharing your game on multiple platforms. After completing this book, you will have the necessary knowledge to develop, build, and deploy 2D games of any genre!
Table of Contents (20 chapters)
Mastering Unity 2D Game Development - Second Edition
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface

Advanced programming techniques


As part of this chapter, we will start to go in depth with some advanced programming techniques. These enable us to structure our code better and add management to our game project, instead of just adding GameObjects to the scene.

Note

Some of the scripts created in the following sections will only be for example purposes and will not be implemented in our game. However, it is recommended that you follow along. Any scripts that will be needed for our game will be readdressed in the Adding NPCs and A Conversation System section.

Singletons and managers

Any project of a sufficient size and complexity is going to run into issues related to managing your GameObjects as and when they are added and removed from a scene. If you don't get your design right from the start, you are setting yourself up for a world of mess later. A common way to handle this is to use one of the three patterns—single instance managers, singletons, or a dependency—system to manage these controllers...