Book Image

Learning C# 7 By Developing Games with Unity 2017 - Third Edition

Book Image

Learning C# 7 By Developing Games with Unity 2017 - Third Edition

Overview of this book

Do you want to learn C# programming by creating fun and interactive games using the latest Unity 2017 platform? If so, look no further; this is the right book for you. Get started with programming C# so you can create 2D and 3D games in Unity. We will walk you through the basics to get you started with C# 7 and its latest features. Then, explore the use of C# 7 and its latest functional programming capabilities to create amazing games with Unity 2017. You will create your first C# script for Unity, add objects into it, and learn how to create game elements with it. Work with the latest functional programming features of C# and leverage them for great game scripting. Throughout the book, you will learn to use the new Unity 2017 2D tool set and create an interactive 2D game with it. You will make enemies appear to challenge your player, and discover some optimization techniques for great game performance. At the end, you will learn how to transform a 2D game into 3D, and you will be able to skill up to become a pro C# programmer with Unity 2017!
Table of Contents (23 chapters)
Title Page
Credits
About the Authors
About the Authors
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Instantiating


I have used the word Instantiate a few times before. What does it mean? Instantiating simply means creating a copy of the object. Yet again, I encourage you to go back to the Scripting Reference and read about Instantiate.

Line 36 is where we are using Instantiate:

LevelPiece piece = (LevelPiece)Instantiate(levelPrefabs[randomIndex]); 

In this line, we are creating a copy of one of the levelPrefabs elements stored under the randomIndex value. We assign the instantiated object straight away to the local piece variable. So basically, this is the line that creates an exact copy of the prefab and places it in the scene.

When instantiating a game object, we are creating a copy of the object. Unity, however, doesn't copy its parent assignment, so the instantiated object will be created on top of the hierarchy. To correct this, we set the parent to the piece object using the transform.SetParent function on line 37.

Great! We know how to create a copy of a game object and assign a parent...