
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Learn to download and install Unity via Unity Hub, activate the free personal license, and configure versions and modules like Visual Studio and Android Build Support for cross-platform deployment.
Create a new 3d Unity project and explore the interface—scene, inspector, hierarchy, and project window—then add a cube, adjust its transform, and apply a texture and material.
Explore the Unity interface and asset workflows, from creating scenes and managing materials, textures, and 3D objects to importing assets, exporting package, and configuring lighting and project settings.
Explore how to add components to game objects, configure physics with rigidbodies and colliders, and use rendering, audio, video, and UI tools to build interactive Unity scenes.
Find and import 3D models into Unity from Blender, export as FBX, extract materials, and configure colliders and physics materials; then create prefabs and explore free model resources.
Learn to program with the C-sharp language in Unity, create and attach scripts to game objects, and use start and update to drive behavior with debug log and set active.
Explore variables in C# by declaring int, float, bool, and string, adjusting visibility, using concatenation and printing, and parsing strings to numbers within Unity.
Explore how to implement if/else conditions in Unity using C#, test booleans, compare values, and nest statements to control a cube's color in a scene.
Explore how loops repeat actions using for and while loops in C#, including setting a stop condition, incrementing a counter, and printing messages like hello world.
Learn how to use arrays in C# within Unity, loop through elements with for and for-each loops, modify values by index, and understand variable scope from global to local.
Create reusable functions in C# for Unity, learn about return types, parameters, and naming conventions, and use Awake, Start, and invoke repeating to control timing.
Learn to define and call functions with parameters in Unity C#, using public variables, return values, getcomponent, and color/material changes to control objects and gameplay.
Learn to handle mouse and keyboard inputs in Unity with C#, using OnMouseOver, OnMouseExit, OnMouseDown, and OnMouseUp to interact and destroy objects, and move them with GetKeyDown and Vector3.right.
Switch to 2D mode in Unity, set up a 2D project with an orthographic camera, install 2D packages, and build sprites with colliders and sorting layers for a tiled scene.
Initialize a 3d mobile Unity project and create a reusable hypercasual template with a minimal gameplay shell, organized folders, and Android build settings.
Create a mobile-optimized skybox in unity using an inverted cube and a lightweight mobile shader. Export the cube from blender as fbx, flip normals, and apply the shader.
Create a ground road and player cube in Unity. Position them for the camera and place markers to enable infinitely many obstacles in three positions for a slalom mini game.
Create a Unity canvas for a hyper-casual mobile game, set screen-size scaling with a 1080x1920 reference, anchor a bottom banner, and display score text with Text Mesh Pro.
Explore the hypercasual game interface: bottom shop and premium options, bottom advertising banner, right-side monetization, left-side options, and thumb zones from green to red guiding UI placement.
Master canvas usage and the anchor system in Unity, toggling pixel mode to scale with screen size, using anchor presets and panels to keep UI responsive across resolutions.
Import a mobile-friendly cartoon shader package, then color objects with the simple toon shader, adjusting steps, smoothness, ambient, and lit offset to achieve cel shading in hypercasual games.
Implement a simple gameplay loop that moves the main cube via touch input, tune speed, and clamp movement to the x-axis between min and max bounds.
Code obstacle movement toward the player with transform.Translate in vector3.back, calibrated by time.deltaTime; add a rigidbody for collisions and update text mesh pro score when obstacles are avoided or destroyed.
Generate infinite obstacles with a spawner that instantiates a prefab at three possible positions using a random index every four seconds.
Make the Unity 3D hyper-casual prototype snackable by adding cartoon effects, particles, and Itwin punch-scale animations, while using try-catch to keep it robust.
Test the hyper-casual template on a real Android phone using build settings and logcat, fix crashes with targeted try-catch around particles and collisions, then validate the app on device.
Duplicate a Unity template to create a new hypercasual 3D cat simulator project for Android, import cat assets from the asset store, and optimize textures and lighting with toon shader.
Learn to prepare a simple touch-to-move script for a cat character in Unity, using a character controller, 3D movement mapped from 2D touch input, and optional animation control.
Extend a 3d mobile game in Unity with C# by continuing the touchscreen movement script, using a character controller, touch input, and delta time for smooth gravity-based motion.
Enhance a cat's movement in Unity by adding a visual circle arrow indicator, enabling touch-driven jump with a jump force, and smoothing input with a lerp transition for mobile gameplay.
Learn to animate 3D characters in Unity by connecting an animator controller to idle and run, using a can move boolean to drive movement and grounded checks to prevent jumping.
Create a C# camera follow script to keep the camera on the cat, using a camera holder and a target. Adjust distance, height, and smoothness for natural tracking with Vector3.SmoothDamp.
Calibrate and normalize the movement vector to ensure a consistent cat speed across the screen, then add a jump dust particle effect by instantiating a public jump effect when jumping.
Create a complete 3D interior level by importing a prefab library, unpacking assets, arranging furniture, and applying textures, colliders, and walls for a playable scene.
Expand the 3D world by adding objects and refining lighting, including a second living room scene. Implement a level-based room activation with a game manager and a lightweight vignette effect.
Create in-game tutorial in Unity to explain cat controls with a bottom UI panel and animated hand. Hide it after first touch with a game manager and test on Android.
Understand what a low poly 3D model is, learn to create and optimize one in Blender, remove unseen polygons, and import via FBX into Unity for mobile games.
Implement a 30-second timer that starts on first touch, updates an on-screen timer, triggers an end screen with a restart button, and resets via the game manager.
Implement a rewarded video ad to grant extra time in a Unity hyper-casual game, update the end screen, and create an extra time button that becomes non-interactable after use.
Explore building a minimal main menu for a hypercasual game, including a play button, skins store, and UI elements, wired to a game manager and onClick actions for monetization.
Implement a skin selector in Unity using a cat skins script to swap 2D textures on the cat material, save the skin with PlayerPrefs, and apply it in real time.
Configure level objects in Unity by adding colliders and rigidbodies, adjusting mass and kinematic settings, and tagging items to track hits and points during cat collisions.
Detect cat furniture collisions with a Cat Eater script using OnControllerColliderHit and tag checks. Enable rigidbodies and apply explosion force plus randomly selected hit particles for feedback.
Learn to calculate and display scores in a hyper-casual Unity game by incrementing points on collisions, and showing score text above the cat's head with a billboard.
Implement high score management in Unity by displaying final and best scores on the end screen, saving max scores with player prefs, and exploring a double-score ad monetization.
Implement a monetization system that awards coins when breaking objects, supports a coins multiplier, and uses PlayerPrefs and TextMeshPro to store and display the coins.
Design a mobile store UI to buy virtual items, using incremental buttons to upgrade coins, speed, and time, while rearranging the interface and creating button textures with Photoshop for Unity.
Showcase coin-based level upgrades with dynamic pricing, UI updates, and player coin tracking in Unity, emphasizing monetization through three incremental buttons and careful balance.
Unlock daily rewards and rare skins by building an achievements system that tracks days since first launch with a Unity C# script, using PlayerPrefs to persist progress.
Set up an achievements screen with unlockable achievements and a trophy icon, using a panel with checks and a back button, and manage unlock states via PlayerPrefs.
Create an AI-controlled cat using a navmesh agent, colliders, and trigger-based collisions to compete with a human player, implement scoring, and enable autonomous movement.
Create autonomous movement for a cat in Unity using a NavMeshAgent, radius-based random destinations, and an AI loop triggered by game start, including animation and scoring.
Balance a computer-controlled AI that scores by colliding with furniture, uses a get points function, and adds random skins, hats, and a crown to boost engagement.
Show end-screen rankings for three players by displaying each nickname and score using a text array and final score texts in Unity.
Learn to implement level progression in Unity, unlock levels and rooms based on total score, and display current level with UI prompts and popups.
Activate Unity Ads to monetize a mobile game by configuring ad units—interstitial, rewarded, and banners—using Android and iOS game IDs, test mode, and initialization scripts.
Install game analytics in Unity to collect and analyze player data; explore the dashboard, track events, progression, revenues, retention, and tests to optimize gameplay and monetization.
Create press kit visuals for your Unity hyper-casual game by capturing multiple screenshots, editing PNGs in Photoshop, and producing short gameplay trailers and ads at publisher-recommended resolutions.
Learn to assemble a compelling press kit for your Unity 3D hyper-casual game by showcasing visuals, screenshots, trailers, and a ready-made Bootstrap-based website to pitch publishers.
Learn how to contact publishers, submit a hyper-casual Unity game with a 32-second portrait gameplay video, and meet publisher KPI expectations like CPI and retention for publication.
Learn to build a complete hypercasual mobile game in Unity using a template from the asset store, with ready scripts, joystick UI, 3D models, and publisher KPIs.
Publish your game on Google Play using Google Play Developer Console, create Google Play Store listing PEGI rating, upload APK via release overview, and monitor ratings, reviews, and Android vitals.
Develop a 3d golf game in unity from a to z, targeting pc and mobile (android and ios), with levels, ball, interface, shot mechanics, score, menus, sounds, and visual effects.
Create a simple 3D golf level in Blender, export as an FBX, and import into Unity, extract materials, set up a mesh collider, and create reusable prefabs for mobile-friendly gameplay.
Design decorative 3D objects in Blender and import them into Unity to decorate golf levels, using flowers and trees, extrusion, and color assignment, then assemble levels with prefabs and models.
Create the first golf level in Unity, extract materials from Blender, apply colors to the level parts, and set up the camera and lighting for clear visibility.
Configure a ball with gravity, a collider, and a trail renderer to produce a glowing trail, and implement a random skybox system that selects a skybox material at startup.
Animate 3D models in Unity using C#: rotate clouds, punch scale flowers with iTween, create grass and skybox animations, and add particle effects for a dynamic golf scene.
Learn to set up a camera that follows a ball in Unity, using CamScript to rotate around the target with mouse or touch input, while ensuring PC and mobile compatibility.
Create a ball shooting mechanic in Unity 3D with C#, featuring an aim reticle and power bar, plus a shot script that uses Rigidbody.AddForce toward the camera.
Improve golf ball shot controls across mobile and PC by applying ergonomic input, using right-click triggers, blocking rapid shots, and enhancing realism with continuous collision detection, friction, and bounce materials.
Learn to handle ball collisions in Unity using trigger colliders: reload the current level on fall and load the next level on reach, via SceneManager and buildIndex.
Learn to add sound effects and background music in a Unity 3D mobile game by building a SfxMgr singleton, using PlaySfxById, and preserving audio across scenes with DontDestroyOnLoad.
Trigger a win particle effect at level end by instantiating a winParticles prefab, display the completed in x shots text, and manage score via a game manager singleton.
Create an end-level menu panel with back to menu and next level buttons and a live score display to guide navigation after level completion.
Create a start-level cutscene with a rotating camera and post-process effects to preview the level, while a 'press space or touch to play' user interface starts via a StartLevel script.
Create a cross-platform pause system in Unity by adding a pause button, a pause menu with a back to menu option, controlling the time scale and triggering sfx for pausing.
Duplicate level one to create subsequent levels, link the end cube to the flag, adjust decorations and colliders, and test in build settings to reach ten levels.
Improve the main menu with decoration, a customized sky and post-processing, then implement a five-level selector that loads by level number and unlocks progression with PlayerPrefs.
Enhance player feedback by graying out the shot button and toggling its interactable state with canShot, so players know when they can shoot, aided by a brief sound cue.
Build an in-game options menu with a music volume slider that saves to PlayerPrefs and applies to the AudioSource on startup.
In Unity, create a zoom camera that activates when the ball nears the level end, using distance checks, SetActive, and a DisableZoom script with canZoom and ForceDisable.
Create and place bonus capsules in a 3D golf-like mobile game, using tags, trigger colliders, and prefabs to reward players and boost score.
Compile your Unity 3D golf game for Android and switch platforms in Unity. Test on a real device via USB debugging and verify cross-platform parity with PC.
Welcome to this ultra-complete guide that will allow you to learn how to create (Hyper) Casual mobile games and acquire good practices. If you want to learn how to create video games for smartphones, optimize your projects, learn best practices and make a living from your passion, this course is for you.
In this tutorial you will learn all the steps of mobile game development from A to Z through a concrete project.
It's a comprehensive training that will allow you to learn how to develop video games with Unity and the C# language. We'll put our knowledge into practice by developing a HyperCasual game.
You'll learn how to optimize your projects to:
Create many game mechanics
Improve your retention
Maximize your income
Choose the right graphics
Optimize your game for mobile
Have an easily exploitable Unity project for a publisher
Develop a project from A to Z with all the essential features in a Hyper Casual game
This is an exceptional and very rich course because it covers what the others don't.
Not only will you have all the knowledge you need to create your mobile games with Unity, but you'll also have all the knowledge you need to maximize your chances of success with your projects.
You will learn how to build a project from start to finish. We are going to develop a game together. We are going to learn how to monetize it. We will see how to manage the marketing part, how to create a press kit, how to contact a publisher and finally how to publish a game online.
What's more, you'll obtain your certificate of achievement on mobile game development with Unity and C# at the end of this tutorial.
You will be by my side as if you were on my development team and in meetings with the publisher. This will give you the confidence and peace of mind you need to get started as an independent game developer.
I therefore invite you to join this course if you finally want to get started and make a living from your passion: video game development!