Build 3 simple mobile games using the free Unity game engine. Learn all the ways mobile games differ from pc games (including touch inputs, push notifications, ads for revenue, screen resolutions and layouts and more). Develop your own awesome mobile games and publish them on the Apple App Store or Google Play Store.
This course is not for absolute beginners. You'll need a basic grasp of Unity and C# (understanding variables, methods, if statements, loops and other similar concepts) before you get started, so you're ready for the more advanced concepts taught.
By the end of this course you will be able to...
Build 3 simple mobile games using the free Unity game engine. Learn all the ways mobile games differ from pc games (including touch inputs, push notifications, ads for revenue, screen resolutions and layouts and more). Develop your own awesome mobile games and publish them on the Apple App Store or Google Play Store.
This course is not for absolute beginners. You'll need a basic grasp of Unity and C# (understanding variables, methods, if statements, loops and other similar concepts) before you get started, so you're ready for the more advanced concepts taught.
By the end of this course you will be able to...
Create games specifically designed for mobile devices using touch input controls.
Ensure that your game will work well no matter what device size or resolution is being used.
Create push notifications to inform players about changes in status for the game (eg. their energy has recharged).
Implement Unity's advertising system so that you can make money from displaying relevant ads in your game.
Use Unity's profiler to identify what, if any, performance issues users will have in your game.
Prepare your game and understand how to submit it to be published on the Apple App Store or Google Play Store.
This course is created with both Windows and Mac users in mind, meaning you can get full benefit whether you are a windows or mac user. We'll also walk you through deploying to both Android (Google) and iOS (Apple) by showing you how to set up your developer account and submit your game.
All students have access to the Q&A forums where our Instructors, Teaching Assistants and Community are ready to help answer your questions and cheer on your success.
In this video (objectives)…
Rick and Nathan welcome you to the course.
In this video (objectives)…
Download Unity Hub, Unity 2020.2 and Visual Studio Code, including the extensions for C# and Unity Code Snippets.
In this video (objectives)…
This video is for folks who have not yet used Unity, or used it a long time ago. We look at the main windows and add game objects to our scene.
In this video (objectives)…
This course is intended for folks who already have the fundamentals of C# understood. This particular lecture is a quick reminder for the core concepts that we'll assume you know already in this course.
In this video (objectives)…
Lucy invites you to join us in our various community support forums in order to ask questions, connect with other students and share your progress.
In this video (objectives)…
Any time we change our project during a lecture we will commit that change to a public source control repository for students to access. In this video we show you how to access that content.
In this video (objectives)…
We download and install the packages that we will need by using Unity's Package Manager to add mobile functionality to our game. Then we finish off by having a quick look at the Device Simulator package in action.
In this video (objectives)…
We create a ball and give it the ability to interact with Unity's physics system. The ball will fall due to gravity and will bounce when it collides with the ground.
In this video (objectives)…
We use the Spring Joint component to attach the ball to a pivot point. This allows it to move around and then sling back due to the tension in the rope.
In this video (objectives)…
We will create a script that will allow us to read touch input and log the data out to the console.
In this video (objectives)…
We will learn how to convert screen-space coordinates to world-space coordinates.
In this video (objectives)…
We will use the world-space coordinates of our touch input to move the ball to where our finger is touching the screen.
In this video (objectives)…
We create a script that lets us drag the ball with our cursor/finger and then release to launch the ball using the Spring Joint.
In this video (objectives)…
We make the ball respawn a few seconds after being launched so that the game can continue to be played.
In this video (objectives)…
We make make the camera zoom in and out based on the size of the device that is being used to make sure that everything fits on screen.
In this video (objectives)…
Now that we have a working game, we're ready to get it onto our (Android) mobile device!
In this video (objectives)…
Now that we have a working game, we're ready to get it onto our (iOS) mobile device!
In this video (objectives)…
We look into how to use multi-touch to read data regardless of how many fingers are on the screen at once.
In this video (objectives)…
We create a script to make a car drive forward whilst speeding up over time.
In this video (objectives)…
We make our input steer the car left and right based on which side of the screen we touch.
In this video (objectives)…
We set up a Cinemachine camera to smoothly follow our car.
In this video (objectives)…
We end the game once the player crashes into an obstacle.
In this video (objectives)…
We build a track for the player to drive around in.
In this video (objectives)…
We create a system to handle score based on how long the player has survived for without crashing.
In this video (objectives)…
We create a main menu where you can see the current high score and start playing the game.
In this video (objectives)…
We create an energy system for playing the game which recharges once you have ran out.
In this video (objectives)…
We implement Android notifications to alert users when their energy has recharged.
In this video (objectives)…
We implement iOS notifications to alert users when their energy has recharged.
In this video (objectives)…
We improve upon the energy system so that you don't have to re-open the app to play once your energy has recharged.
In this video (objectives)…
We download and install the packages that we will need to get started with the section.
In this video (objectives)…
We read where the player touches the screen relative to the spaceship and calculate in which direction to add force.
In this video (objectives)…
We can now add the calculated force to our spaceship and move around the screen.
In this video (objectives)…
We make sure that our spaceship always stays in views of the camera by teleporting it when touching the edges of the screen.
In this video (objectives)…
We make the spaceship rotate to face in the direction of its velocity.
In this video (objectives)…
We create asteroids for the player to avoid, otherwise the game ends.
In this video (objectives)…
We use Unity's particle system to create a starfield for the game's background.
In this video (objectives)…
We create a system to spawn in asteroids and launch them across the screen.
In this video (objectives)…
We end the game by stopping the asteroid spawning and popping up the game over UI to allow the player to player again or return to the main menu.
In this video (objectives)…
We give the player score for surviving and display their final score when they crash on the game over UI.
In this video (objectives)…
We let the player watch an ad after they crash which allows them to continue building up their score.
In this video (objectives)…
We'll use Unity's profiler tool to view our game's performance costs and look into possible ways to optimize.
In this video (objectives)…
We have a look into the process for publishing to the Google Play Store and make sure that we are prepared for getting our own games out to the public.
In this video (objectives)…
We have a look into the process for publishing to the Apple App Store and make sure that we are prepared for getting our own games out to the public.
In this video (objectives)…
We install and set up the Unity IAP package and implement a simple use case where players can purchase a new skin for their vehicle.
In this video (objectives)…
We're finished with the course - good luck with your mobile games, and please share what you come up with!
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.