Introduction to Game Development with Unity

Learn to develop a high-quality 3D game for web, PC, Mac or even Linux using Unity. Game development can be fun and very rewarding when publishing a hit game to the iOS App Store or Android Market.
Course info
Rating
(331)
Level
Intermediate
Updated
Dec 3, 2013
Duration
4h 31m
Table of contents
Introduction to Unity
Assets
Survival Game Template
Survival Game Template - Pt 2
Game GUI
Items
Finalize and Publish
Description
Course info
Rating
(331)
Level
Intermediate
Updated
Dec 3, 2013
Duration
4h 31m
Description

Learn how to make a high quality 3D Game ready for publishing to the App Store or Web like Facebook in about 3 hours. Discover Agile Game Development design principles and practices geared towards Unity3D and .Net. Learn how to create, acquire, modify and integrate AAA quality assets such as sounds, music and 3D models. By the end of this course you will have a survival game which you can publish and play with your friends and family or continue to develop into your own custom creation. Some C# and .Net experience recommended.

About the author
About the author

Alexander has been an IT Instructor, Developer, and now President at SocialPlay inc.

More from the author
More courses by Alexander Zanfir
Section Introduction Transcripts
Section Introduction Transcripts

Assets
Hi. My name's Alexander Zanfir, and in this module we'll cover Assets. We'll learn about the game environment, which you can think of as the play area in which the character will move around in. In that game environment, we'll have different Asset types, such as music, 3D models as props, sounds, and then animations. By the end we'll have a Play Scene, which we can use in our last module, in our game template.

Survival Game Template
Hi my name's Alexander Zanfir and in this module we'll begin the first half of our survival game template. We'll begin by creating the game logic, starting with the AI, which will allow the enemy to follow the player and attack them. As well as the different AI states, which will allow the enemies to decide whether they should attack or not, if they are dead or alive. We will put together an enemy spawner which will allow us to spawn enemies at random points in our map. This will add some challenge as the player won't know which direction the enemies are coming from. The spawner will be highly flexible and you can add as many points as you like without breaking the system. We will introduce a player attack, so the player can attack enemies and the enemies will take damage eventually dying. We'll create a hit particle from scratch to make the enemy appear as if they're taking damage. And with the particles for taking damage we'll also add a hit sound and a death sound for the enemies. And we'll finish off by introducing a high quality enemy model from the Asset Store. So let's talk a bit about the general objectives or what makes a survival game template in our case. So the first thing is that there's waves of enemies, so a group of enemies comes towards the player, they're all spawn at the same time. If the player defeats them, the next wave begins, and it keeps getting harder and harder. Now the losing condition is governed by the player's health when he runs out the game's over. So the main objective is let's see how many waves of enemies you can survive before you lose your health. And there'll be a pause in between enemy waves so maybe five seconds for the player to gather himself and then there's a countdown and the next wave begins to spawn and head towards the player.

Survival Game Template - Pt 2
Hi. My name is Alexander Zanfir, and in this module we'll look at completing our previous template by introducing a losing condition. In this module, we'll expand the game logic by adding enemy attacks. In doing so, you now have the possibility of losing the game. And when you lose the game, you'll be able to provide your high score. Thus, by the end of this module, we'll, by definition, have a full game, where a player can keep playing indefinitely through an endless amount of waves, and compete with their friends by comparing their high scores. Let's get started.

Game GUI
Hi. My name is Alexander Zanfir, and in this module we'll look at developing the graphical user interface for our game template. Although our game logic is fairly complete, what we're lacking is the visual representation of the game's progress. So, to begin with, we're going to introduce a character Health Bar to see our player's health at a glance. We're going to be showing the wave count so you can see how far you are into the game, and we're going to show the current enemy count of that wave. We'll be displaying the score, and calculating the score to save into our high score table.

Items
Hi my name's Alexander Zanfir, and in this module we'll introduce different items into our game template. And with new items, we'll need the ability to drop and pickup existing items. And so we'll introduce a new interface, IPickupable that will handle dropping, and picking up of the items. We'll introduce a new weapon type, the rifle, and handle its dropping. Although we won't handle enemy drops in this module, we'll set up everything that's needed to implement it in the next module. We'll also need to handle swapping weapons from our mount point to a temporary swap point.

Finalize and Publish
My name is Alexander Zanfir and in this module we'll finalize our game template and publish it to the web. And although we can pick up items already from our previous modules, in this module we'll have a proper equip class through an IEquipable interface. And with that we'll separate all our current equip logic from our pickup class. Thus greatly improving our overall design for the features which our ammo drop is not requesting. And we'll also implement our ammo drop from our enemy so that when you kill an enemy they have a chance of dropping an ammo drop. Finally we'll finish with publishing to the web and we'll show you how to generate an HTML file that you can load in any web browser to play your game.