Developing 2D Games with Unity: Independent Game Programming with C#

Developing 2D Games with Unity: Independent Game Programming with C#

by Jared Halpern

Paperback(1st ed.)

$35.99 $39.99 Save 10% Current price is $35.99, Original price is $39.99. You Save 10%.
Choose Expedited Shipping at checkout for guaranteed delivery by Wednesday, September 25

Overview

Follow a walkthrough of the Unity Engine and learn important 2D-centric lessons in scripting, working with image assets, animations, cameras, collision detection, and state management. In addition to the fundamentals, you'll learn best practices, helpful game-architectural patterns, and how to customize Unity to suit your needs, all in the context of building a working 2D game.

While many books focus on 3D game creation with Unity, the easiest market for an independent developer to thrive in is 2D games. 2D games are generally cheaper to produce, more feasible for small teams, and more likely to be completed. If you live and breathe games and want to create them then 2D games are a great place to start.

By focusing exclusively on 2D games and Unity’s ever-expanding 2D workflow, this book gives aspiring independent game developers the tools they need to thrive. Various real-world examples of independent games are used to teach fundamental concepts of developing 2D games in Unity, using the very latest tools in Unity’s updated 2D workflow.

New all-digital channels for distribution, such as Nintendo eShop, XBox Live Marketplace, the Playstation Store, the App Store, Google Play, itch.io, Steam, and GOG.com have made it easier than ever to discover, buy, and sell games. The golden age of independent gaming is upon us, and there has never been a better time to get creative, roll up your sleeves, and build that game you’ve always dreamed about. Developing 2D Games with Unity can show you the way.

What You'll Learn

  • Delve deeply into useful 2D topics, such as sprites, tile slicing, and the brand new Tilemap feature.
  • Build a working 2D RPG-style game as you learn.
  • Construct a flexible and extensible game architecture using Unity-specific tools like Scriptable Objects, Cinemachine, and Prefabs.
  • Take advantage of the streamlined 2D workflow provided by the Unity environment.
  • Deploy games to desktop

Who This Book Is For

Hobbyists with some knowledge of programming, as well as seasoned programmers interested in learning to make games independent of a major studio.

Product Details

ISBN-13: 9781484237717
Publisher: Apress
Publication date: 11/29/2018
Edition description: 1st ed.
Pages: 383
Sales rank: 687,570
Product dimensions: 6.10(w) x 9.25(h) x (d)

About the Author

Jared Halpern is a software developer with over 12 years of experience working in a wide range of technologies. Lately he has specialized in Apple and Unity. Jared has built many iPhone apps over the years, including games, augmented reality, photography, eCommerce, video, and GIF apps. His interests include Swift, Unity, AR, Game Development, and the creative application of these technologies. He has an immense passion for the potential of games as an interactive medium to tell stories and give experiences in ways that other mediums cannot. He currently enjoys working as a freelance software developer.

Table of Contents

Chapter 1. Gaming Past and Present

Chapter Goal: Draw upon the current renaissance in independent games to inspire readers to leverage their own experiences and fresh perspectives to build innovative independent games.

● Games Historically

● Games Today

● Independent Games

● Game Engines - What are they and why do they matter?

Chapter 2, Introduction to Unity

Chapter Goal: Introduce the user to the Unity Development Environment. Explain how to navigate the interface, Views, and Scenes, and configure Layouts for ease of development.

● Install and Configure Unity

● Navigating the Unity Interface

● Understanding the Different Views

● Configure and Customize the Layout

● The Transform Toolset

● Unity Documentation

Chapter 3. Foundations

Chapter Goal: Walk the reader through C# syntax, naming conventions, and data types. Teach the reader about Unity-specific concepts like Game Objects, Components, and Scripts. We’ll also be talking about some of the more common architectural design patterns and describe why they are used in the context of building our sample game.

● C# Walkthrough

● Entity-Component Architecture

● Game Objects: Our Container Entities

● Components: Building Blocks

● Scripts: Logic for Components

● Introducing: Prefabs

● Inheritance and OOP

● Unity Object Lifecycle

● Logging Output

● Debugging

Chapter 4, World Building

Chapter Goal: Leverage pre-existing and new features of the Unity 2D development toolset to efficiently build out animations, backgrounds, and levels.

● Importing 2D Assets

● Working with Sprite Atlases

● Animating our Sprites

● 2D Tilemapping

● 9-Slicing Tiles

● Scriptable Tiles

● Scriptable Brushes

Chapter 5, Building Out the Gameplay

Chapter Goal: This chapter will focus on tying the content from the previous two chapters together to make a playable game. We will utilize more design patterns, implement collision detection, and talk about best-practices when handling user-input in a generic fashion.

● Handling User Input

● Collision Detection

● The Delegate Pattern

● Object Managers

● Physics in Unity

Chapter 6, Beyond the Basics

Chapter Goal: Discuss and implement various features common across all games, such as scene management, saving data, and UI. Build mechanisms to link together the various states of the game. Demonstrate how to extend the Unity Editor to build tools that increase developer efficiency.

● Scene and Level Management

● Managing Game State

● Building the Game Manager

● Object Pooling

● Coroutines

● Extending the Unity Editor

● Saving Data

Chapter 7, Polish, Polish, Polish

Chapter Goal: Add the finishing touches such as audio, custom fonts, buttons, and menus. Touch upon topics such as shaders and performance profiling, as well as analytics so we can see how users play our game.

● Adding Sound and Music

● Using Custom Fonts

● Custom Buttons

● Menus

● Splash Screens

● Particle Effects

● Unity Analytics

● Shaders

● Performance Profiling

Chapter 8, Where to go next

Chapter Goal: Discuss various next steps the reader can take to further their Unity knowledge, build better games, and get more involved with the Unity community.

● Asset Store

● Community: Online and Offline

● Game Jams

● Online Resources

Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews