MENU

Fun & Interesting

Asteroids - A Comprehensive Unity Game Dev Tutorial

Midnite Oil Software LLC 1,450 6 months ago
Video Not Working? Fix It Now

Unlock the secrets of game development with my comprehensive Unity game dev tutorial! You will be guided step-by-step through creating a fully functional version of the classic arcade game Asteroids using Unity. What You'll Master: -Game Architecture & Design Patterns: Build scalable architecture and organize your code effectively and utilize powerful techniques like an Event Bus to decouple components. -Unity Fundamentals: Set up projects, import assets, and build & publish to different platforms. -Enemy AI & Spawning: Develop challenging enemy behaviors with efficient object pooling. -Scoring & Game State: Manage scoring and game states like game overs and player deaths. -User Interface Development: Create responsive UI for scores, lives, and settings. -Audio Management: Integrate music & sound effects and dynamic audio settings. -Mobile Touch Controls: Implement touch controls for rotation, thrusting, firing, and more. -Build a persistent settings manager: Load & save user preferences. Level up your skills with practical examples and clear explanations. Like, subscribe, and hit the bell for more game dev content! 00:00:00 - Intro 00:02:20 - Install Unity 00:05:46 - Create Project 00:07:14 - Importing Assets Via the Package Manager 00:17:34 - Importing Other Assets 00:22:22 - Create folder structure 00:31:32 - Create space background 00:34:51 - Create player ship 00:38:15 - Ghosts explained 00:42:43 - Coding the ghosts 00:56:31 - Creating a ghost prefab 00:57:48 - Coding the ghost parent script 01:07:55 - Timers 01:14:12 - Timer manager 01:19:34 - Ghost spawner 01:25:43 - Testing the ghosts 01:28:44 - Get the ship moving 01:29:08 - Starting the PlayerShip script 01:37:22 - Start PlayerDirector class 01:40:59 - Player input 01:48:02 - Create Player Director 01:49:34 - Create engine exhaust 01:53:02 - Create an audio mixer 01:57:26 - Write code to toggle exhaust 01:59:57 - Add BulletBase class 02:03:15 - Configure collision matrix 02:05:21 - Start writing bullet scripts 02:10:41 - Create PlayerWeapons component 02:18:17 - Fire projectiles 02:25:00 - Adding a bootstrapper and sound effects manager 02:34:22 - Create asteroid prefab 02:36:52 - Asteroid settings scriptable object 02:47:26 - Create asteroid spawner 02:53:14 - Add asteroid ghosts 02:55:12 - Add small and medium asteroids 03:02:36 - Create explosion spawner and event bus 03:03:42 - The event bus 03:09:22 - Explosion effect 03:16:53 - Destroy asteroids 03:21:49 - Test shooting asteroids 03:25:52 - Create the GameManager class 03:37:31 - Game state changed event 03:50:12 - Get asteroid spawner responding to game state changed events 03:56:00 - Add music manager 04:16:36 - Get music manager responding to game state changes 04:19:05 - Implement scoring 04:27:01 - Start implementing UI 04:37:56 - Player lives UI 04:41:14 - More UI fields and player death 04:46:57 - Implement player death 04:48:53 - Update player lives when ship destroyed 04:51:20 - Get game over working 04:52:58 - Fix invulnerbility issue 04:55:37 - Add enemy ships 05:13:11 - Enemy bullets 05:14:33 - Enemy ship spawner 05:28:53 - Testing enemy ship spawner 05:33:24 - Create settings manager 05:38:37 - Player preferences 05:46:54 - Player prefs explained 05:48:57 - Settings form 06:09:02 - Load settings scene additively 06:10:51 - Wiring up the settings controls 06:24:58 - Testing settings 06:28:29 - Fix missing fire button in settings 06:29:52 - Create Start Menu scene 06:46:16 - Publishing a WebGL build to itch.io 06:51:15 - Uploading to itch.io 06:57:33 - Add mobile touch controls 07:10:09 - Write MobileJoystickInput script 07:36:43 - Build for Android 07:37:51 - Testing mobile controls on Android device 07:40:54 - Outro Source code: https://gitlab.com/midnite-oil-software-tutorials/asteroids-tutorial Links to assets can be found here: https://gitlab.com/midnite-oil-software-tutorials/asteroids-tutorial/-/blob/main/README.md?ref_type=heads My Links: My website: http://midniteoilsoftware.com/ My itch.io site: https://midniteoilsoftware.itch.io/ Twitter: https://twitter.com/SoftwareOil https://discord.gg/wrdqXPtw9y https://www.facebook.com/groups/347087173378560 In case you'd like to show your support by buying me a coffee: https://ko-fi.com/gregorybradburn Check out assets that are on-sale https://assetstore.unity.com/?on_sale=true&orderBy=1&rows=96&aid=1100lzsEu #madewithunity #unitytutorial #arcade #unity2d #input #settings #ui #tutorials #indiegamedev #indiedev #indigames

Comment