Book Image

Unity 2017 2D Game Development Projects

By : Francesco Sapio, Lauren S. Ferro
Book Image

Unity 2017 2D Game Development Projects

By: Francesco Sapio, Lauren S. Ferro

Overview of this book

<p>2D games are everywhere! Timeless and popular, 2D games represent a substantial segment of the games market. The Unity engine has revolutionized the gaming industry, by making it easier for game developers to create quality games on a budget. If you are looking for a guide to create 2D games using Unity 2017, look no further. With this book, you will learn all the essentials of 2D game development by creating three epic games in a step-by-step manner throughout the course of this book. </p><p> </p><p>The first game will have you collecting as many cakes as possible. The second will transport you to outer space to traverse as far as possible while avoiding enemy spaceships. The last game will have you running and jumping across platforms to collect coins and other exotic items. </p><p> </p><p>Throughout all these three games, you will create characters, make them move, and create some enemies. And then, of course, write code to destroy them!. After showing you the necessities of creating a game, this book will then help you to porting the game to a mobile platform, and provide a path to publish it on the stores. </p><p> </p><p>By the end of this book, you will not only have created three complete great games, but be able to apply your knowledge to create and deploy your own games.</p>
Table of Contents (14 chapters)

Moving the character to the new position

The last step for our PlayerController is to move the character to the new position that we calculated in the last section.
We could do this by changing the transform of the character, but since we are using the physics engine of Unity, and we don’t want to force the character to go against a wall ignoring the collisions, we need to find another way.
Thankfully, the Rigidbody that we created a couple of sections ago, has a built-in function to move the Rigidbody into a new position and respect the collisions. Exactly what we need! The function is called MovePosition() and we can use it as shown here:

void FixedUpdate () {
//Get the new position of our character
var x = transform.position.x + Input.GetAxis("Horizontal") * Time.deltaTime * speed;
var y = transform.position.y + Input.GetAxis("Vertical...