Preface

Game development is a broad and complex task. It is an interdisciplinary field, covering subjects as diverse as artificial intelligence, character animation, digital painting, and sound editing. All these areas of knowledge can materialize as the production of hundreds (or thousands!) of multimedia and data assets. A special software application—the game engine—is required to consolidate all of these assets into a single product.

Game engines are specialized pieces of software, which used to belong to an esoteric domain. They were expensive, inflexible, and extremely complicated to use. They were for big studios or hardcore programmers only. Then along came Unity.

Unity represents the true democratization of game development. It is an engine and multimedia editing environment that is user-friendly and versatile. It has free and Pro versions; the latter includes even more features. As we write this preface, Unity offers deployment to:

  • Mobile: Android, iOS, Windows Phone, and BlackBerry
  • Web: WebGL
  • Desktop: PC, Mac, and Linux platforms
  • Console: PS4, PS3, Xbox One, XBox 360, PlayStation Mobile, PlayStation Vita, and Wii U
  • Virtual Reality (VR)/Augmented Reality (AR): Oculus Rift and Gear VR

Today, Unity is used by a diverse community of developers all around the world. Some are students and hobbyists, but many are commercial organizations, ranging from garage developers to international studios, who use Unity to make a huge number of games — some you might have already played on one platform or another.

This book provides over 100 Unity game development recipes. Some recipes demonstrate Unity application techniques for multimedia features, including working with animations and using preinstalled package systems. Other recipes develop game components with C# scripts, ranging from working with data structures and data file manipulation, to artificial intelligence algorithms for computer-controlled characters.

If you want to develop quality games in an organized and straightforward way, and want to learn how to create useful game components and solve common problems, then both Unity and this book are for you.

What this book covers

Chapter 1, Core UI – Messages, Menus, Scores, and Timers, is filled with UI (User Interface) recipes to help you increase the entertainment and enjoyment value of your games through the quality of the interactive visual elements. You'll learn a wide range of UI techniques, including updatable text and images, directional radars, countdown timers, and custom mouse cursors.

Chapter 2, Inventory GUIs, shows you how many games involve the player-collecting items, such as keys to open doors, ammo for weapons, or choosing from a selection of items, such as from a collection of spells to cast. The recipes in this chapter offer a range of text and graphical solutions for displaying inventory status to the player, including whether they are carrying an item or not, or the maximum number of items they are able to collect.

Chapter 3, 2D Animation, includes powerful 2D animation and physics features. In this chapter, we present recipes to help you understand the relationships between the different animation elements in Unity, exploring both the movement of different parts of the body and the use of sprite-sheet image files that contain sequences of sprite frames pictures.

Chapter 4, Creating Maps and Materials, contains recipes that will give you a better understanding of how to use maps and materials with Unity 5's new Physically Based Shaders, whether you are a game artist or not. It is a great resource for exercising your image editing skills.

Chapter 5, Using Cameras, explains recipes covering techniques for controlling and enhancing your game's camera. This chapter will present interesting solutions to work with both single and multiple cameras.

Chapter 6, Lights and Effects, offers a hands-on approach to a number Unity's lighting system features, such as cookie textures, Reflection maps, Lightmaps, Light and Reflection probes, and Procedural Skyboxes. Also, it demonstrates the use of Projectors.

Chapter 7, Controlling 3D Animations, focuses on character animation, and demonstrates how to take advantage of Unity's animation system — Mecanim. It covers a range of subjects from basic character setup to procedural animation and ragdoll physics.

Chapter 8, Positions, Movement and Navigation for Character GameObjects, presents a range of directional recipes for computer-controlled objects and characters, which can lead to games with a richer and more exciting user experience. Examples of these recipes include spawn points, checkpoints, and waypoints. It also includes examples that make groups of objects flock together, and the use of Unity NavMeshes for automated path-finding over terrains and around obstacles.

Chapter 9, Playing and Manipulating Sounds, is dedicated to making sound effects and soundtrack music in your game more interesting. The chapter demonstrates how to manipulate sound during runtime through the use of scripts, Reverb Zones, and Unity's new Audio Mixer.

Chapter 10, Working with External Resource Files and Devices, throws light on how external data can enhance your game in ways such as adding renewable content and communicating with websites. The chapter also includes recipes on automating your builds with Unity Cloud, and how to structure your projects, so they can be easily backed up using online version control systems such as GitHub.

Chapter 11, Improving Games with Extra Features and Optimization, provides several recipes with ideas for adding extra features to your game (such as adding slow motion and securing online games). Many other recipes in this chapter provide examples of how to investigate and potentially improve the efficiency and performance of your game's code.

Chapter 12, Editor Extensions, provides several recipes for enhancing design-time work in the Unity Editor. Editor Extensions are scripting and multimedia components, that allows working with custom text, UI presentation of the game parameters, data in the Inspector and Scene panels, and custom menus and menu items. These can facilitate workflow improvements, thus allowing game developers to achieve their goals quicker and easier.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.224.68.28