Preface

Unity has become one of the most popular game engines for developers, from the amateur hobbyist to the professional working in a large studio. Unity used to be considered a 3D tool, but with the release of Unity 4.3, it now has dedicated 2D tools. This will expand Unity's use even more.

Developers love its object-oriented drag-and-drop user interface which makes creating a game or interactive product so easy. Despite the visual ease of working in Unity, there is a need to understand some basic programming to be able to write scripts for GameObjects. For game developers that have any programming knowledge, learning how to write scripts is quite easy. For the the artist coming to Unity, creating the visual aspects of a game is a breeze, but writing scripts may appear to be a giant roadblock.

This book is for those with no concept of programming. I introduce the building blocks, that is, basic concepts of programming using everyday examples you are familiar with. Also, my approach to teaching is not what you will find in the typical programming book. In the end, you will learn the basics of C#, but I will spoon-feed you the details as they are needed.

I will take you through the steps needed to create a simple game, with the focus not being the game itself but on how the many separate sections of code come together to make a working game. I will also introduce the concept of a State Machine to organize code into simple, game controlling blocks. At the end, you will be saying "Wow! I can't believe how easy that was!"

What this book covers

Chapter 1, Discovering Your Hidden Scripting Skills, explains that the very first thing you need to do is overcome your perceived fear of writing scripts. You'll see that writing scripts is very similar to many of your daily routines. We also have a first look at Unity's scripting documentation. Finally, we see how to create a C# script file in Unity.

Chapter 2, Introducing the Building Blocks for Unity Scripts, explains that there are two primary building blocks for writing code, variables and methods. This chapter introduces the concepts of a variable and a method. With these two building blocks, we look into the concept of a "class," a container of variables and methods used to create Unity Components. Finally, communication between GameObjects is discussed by introducing Dot Syntax.

Chapter 3, Getting into the Details of Variables, explains using variables in detail. We see how they're used for storing data, and how the magic works to turn variables into Component properties which appear in the Unity Inspector panel.

Chapter 4, Getting into the Details of Methods, explains how methods perform the actions that take place on GameObjects. We see how to create and use methods in detail. We also look into two of Unity's most often used methods, the Start() method and the Update() method.

Chapter 5, Making Decisions in Code, explains that during gameplay, decisions have to be made about many things, just like you do in your daily life. We look at many of the ways choices are made and some of the common reasons for which decisions are required.

Chapter 6, Using Dot Syntax for Object Communication, shows us what Dot Syntax actually is, a simple address format to retrieve information or send information to other Components.

Chapter 7, Creating the Gameplay is Just a Part of the Game, shows that developing the gameplay is fun, but there are other parts needed to make a fully functional game. We look into some of the possible parts needed and how to organize all the parts by introducing the use of a State Machine.

Chapter 8, Developing the State Machine, creates a simple State Machine to show how it works, and see the simplicity it brings for controlling a game. We show how to change Scenes for a multi-level game and how to deal with GameObjects when changing to another scene.

Chapter 9, Start Building a Game and Get the Basic Structure Running, teaches us how to access and use Unity's Scripting Reference and the Reference Manual for the features we want. Then we begin creating a multi-level game using the state machine and three scenes. A Player GameObject is added and we learn how to control it.

Chapter 10, Moving Around, Collisions, and Keeping Score, shows how to move the Player around using Unity's physics system, and have cameras follow the Player's movements. We develop a GUI scoring system, start shooting projectiles at enemy objects, and see how to win or lose the game. Ultimately, we see how all the separate pieces of code come together and work together.

Chapter 11, Summarizing Your New Coding Skills, reviews the main points you learned about programming with C# and working with objects. I tell you about some of the C# and Unity features you may want to learn now that you understand the basics of C#. I will highlight the benefits of incorporating a state machine into your Unity projects. Finally, I present my favorite sources for further learning.

Appendix A, Initial State machine files, shows the initial code for the classes needed for changing States in our game. These State Machine classes are the starting point for organizing and adding game code.

Appendix B, Completed code files for Chapters 9 and 10, shows all the class and script files used for playing our completed game.

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

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