Independent Game Development with Unity Game Engine
Total Page:16
File Type:pdf, Size:1020Kb
Independent Game Development with Unity Game Engine Niko Jylhä Master’s thesis December 2018 Degree Programme in Information Technology ABSTRACT Tampereen ammattikorkeakoulu Tampere University of Applied Sciences Degree Programme in Information Technology Niko Jylhä Independent Game Development with Unity Game Engine Master’s thesis 62 pages, appendices 0 pages December 2018 "As far back as I can remember, I always wanted to be a gangster" is the opening line of the movie Goodfellas by Martin Scorsese, 1990 and as my opinion it’s one of the greatest in movie history. For me as a person that could be translated to "As far back as I can remember, I always wanted to be a game developer". When me and my brother got Commodore 64 back in a day for Christmas present it wasn’t enough to just play the games I wanted to learn how to make those space ships to fly and monsters to move. But what does it mean to be a game developer? And to be more specific a “independent” one? How easy it is to start creating games? Is it possible to make money with games when there are thousands of games around? Goal of this thesis is to share some light on those questions. Theory part will focus on questions like, what “Independent game developer” means? What do you have to consider when creating games? How many independently created games are there and what kind of tools to create games? Hands on part will focus on studying Unity game tool. Goal is to implement level of game called Tapper and to study basic concepts of game, moving things around, like player and enemies and collision detection. Key words: independent, game development, unity 3d, steam, xbox, playstation 3 TABLE OF CONTENTS 1 Introduction ....................................................................................................... 6 2 Independent game development ........................................................................ 8 2.1 What is independent game development?.................................................. 8 2.2 Indie game releases .................................................................................... 8 2.2.1 Steam Spy - PC ............................................................................... 8 2.2.2 Xbox 360, Xbox One and Playstation 4 .......................................... 9 2.3 How to become independent game developer ......................................... 10 2.3.1 Game design .................................................................................. 10 2.3.2 Level design .................................................................................. 12 2.3.3 Marketing ...................................................................................... 14 3 Game Development Tools ............................................................................... 16 3.1 Microsoft XNA Game Studio/MonoGame .............................................. 16 3.2 GameMaker: Studio ................................................................................. 16 3.3 Adventure Game Studio ........................................................................... 16 4 Unity – Game Engine ...................................................................................... 17 4.1.1 Learning the Unity ........................................................................ 17 4.1.2 Unity Asset store ........................................................................... 19 5 Tapper game .................................................................................................... 21 6 2D Game Development with Unity ................................................................. 22 6.1 Creating the 2D project ............................................................................ 22 6.1.1 Creating the scene ......................................................................... 24 6.1.2 Scene background ......................................................................... 25 6.1.3 Automatic scaling.......................................................................... 26 6.2 Player object ............................................................................................ 27 6.2.1 Player movement points ................................................................ 28 6.2.2 Canvas ........................................................................................... 29 6.2.3 Moving the player character.......................................................... 31 6.3 Enemy (aka customer) objects ................................................................. 37 6.3.1 Enemy objects ............................................................................... 37 6.3.2 Spawning the enemies ................................................................... 38 6.3.3 Moving the enemies ...................................................................... 41 6.4 Collision system ....................................................................................... 43 6.5 Serving the drinks .................................................................................... 48 6.6 Ending the game ...................................................................................... 53 6.6.1 Restart game button....................................................................... 53 4 6.6.2 Collision event to stop enemy spawning and to show Restart button ...................................................................................................... 55 7 Final words ...................................................................................................... 60 REFERENCIES .................................................................................................... 62 5 LIST OF ABBREVIATIONS XBLA Xbox Live Arcade – Microsoft’s game download service for Xbox 360. Steam Video game distribution channel owned by Valve Corpora- tion. NES Nintendo Entertainment System AAA or triple A “In the video game industry, AAA (pronounced "triple A") is a classification term used for games with the highest develop- ment budgets and levels of promotion. A title considered to be AAA is therefore expected to be a high quality game and to be among the year's bestsellers.” (Wikipedia) Apple App Store Apple video game distribution channel for IOS platforms iPh- one and iPad. Google Play Googles video game distribution channel for Android devices. 6 1 Introduction Minecraft, Legend of Grimrock, World of Goo, Limbo, Fez, Super Meat Boy, Hotline Miami and Braid, just some of the names of the independent game development success stories. They all have been developed by individuals or small group of people in a way called indie game development. Independent game development is a way for a person or group people to independently create games usually with small budgets. Now days game development tools like Unity and digital distribution channels like Steam offer developers’ easy way to start developing games. But starting is just the beginning the journey. Purpose of this thesis is to study the what is indie game development and to learn how to create games using Unity Game Engine. Objectives are: • to learn what independent game development means • popularity of indie games • what you have to consider when creating games • what game development tools are there to create your game • what distribution channels are there to publish your game • to learn how easy or hard it is to use Unity tool • implement level of Tapper game with Unity Motivation for this thesis is the authors passion for video games and hopes of some day to publish his own game. What is left out in this thesis is the actual publishing of the game. This side would be interesting to study in the future. This thesis is presented in seven (7) chapters: • Chapter 1, introduction to this work. • Chapter 2, explains what independent game development is, shares some light about the popularity of indie games and explains some things you need to consider when creating games, like game design and marketing. 7 • Chapter 3, introduces to some of the game development tools out there. • Chapter 4, focuses on Unity Game Engine that was used in the “hands-on” part of this thesis. • Chapter 5, explains the Tapper game. • Chapter 6, is the hands-on part, where level of Tapper game is created with Unity tool. • Chapter 7, final chapter, talks about how things went, summary of goals set for this thesis and were they achieved. 8 2 Independent game development 2.1 What is independent game development? Independent game development is a process where game is developed by a small group of people or even by one individual. Game budget is usually small, and it doesn’t neces- sarily have any publishers. Games are usually not released on physical copies, instead distribution channel for the game is usually digital portal like XBLA (Xbox Live Arcade), Steam, Apple App Store, Android Market Place, Nintendo eShop or some other similar channel. 2.2 Indie game releases How many indie games are there? Well, you could say that a “lot”. Exact figure is impos- sible to say because there isn’t just one list that lists them all. Although indie games are important strategy for companies like Nintendo, Sony and Microsoft they don’t reveal lists of the indie games and line of “independent” is not always so black and white. For PC platform Steam Spy web site is probably best place to look for information but for other platforms like Xbox it’s a bit harder. Just to get the idea of popularity of creating indie games let’s have a look at two platforms PC and Microsoft