
Learn to build a 2D game with a 3D look in Unity, building a simple player, shooting, motion with physics, gates, platforms, power-ups, and health systems, with a retry mechanic.
Learn to download and install Unity, start a new 3D platform shooter project, and organize files while practicing coding for publishing potential and building your portfolio.
Explore Unity by adding a cube as a 3D element, adjust its transform (position, rotation, scale), and apply a material to change color.
Create a player in Unity using a capsule, place it at position 0 2 0 inside a container, then add collider and rigidbody for gravity and physics-driven movement.
Create a C# script to move player left or right, attach it as a component, and implement input handling with get key down and get key in update, using debug logs.
Configure the player's rigid body to enable horizontal movement in Unity. Use velocity or target velocity with vector3 to move left and right while preserving y and z velocity.
Implement jump in Unity by applying an upward force via rigid body add force and using a raycast to detect ground, preventing repeated midair jumps and enabling jump force tuning.
Learn to make a game camera follow the player in Unity with an offset. Apply smooth movement using lerp and switch to fixed update for physics.
Design a bullet prefab, script simple forward movement with delta time, and instantiate bullets on space press to enable shooting in a Unity action shooter.
Explore how to implement and customize particle effects for bullets using Unity, adjusting lifetime, speed, size, emission, shape, color gradients, and world versus local simulation to create dynamic trails.
Create and customize multiple bullets in Unity by duplicating prefabs, adjusting materials, colors, sizes, speeds, angles, and damage, and prepare for a charge shot mechanic.
Implement a charging bullet system in Unity by holding space to power shots, selecting a bullet prefab from an array based on charge, and displaying corresponding charge effects for feedback.
Create a base enemy class with health, damage handling, and destruction logic, using on trigger enter to apply bullet damage and destroy the enemy when health reaches zero.
Build a rock enemy in Unity by structuring it with a container, collider, and rigidbody, then apply a brown material. Implement a shrink-on-hit animation via a reusable enemy base class and prefabs.
Create a non looping killing particle effect prefab and spawn it when the enemy is destroyed. Instantiate it at the enemy's position and end after its duration.
Create a script in Unity that gets the particle system component and destroys the game object when the particle system is no longer alive, freeing memory and optimizing performance.
Create a walking enemy in Unity with a walking enemy script that moves a rigidbody left and right, toggles direction on a timer, and uses a box collider.
Develop a health system and knockback mechanic in Unity by handling enemy collisions, applying health reduction with invincibility duration, and using a directional knockback force.
Create and apply custom physics materials in Unity to control friction for the player, enemies, and rocks, and tune knockback and invincibility timing for responsive 2D combat.
Improve collision handling by correcting knockback direction and ensuring knockback is not overridden by movement logic, controlled through an invincibility timer and zero-friction physics materials for smoother rock interactions.
Design a flamethrower enemy in Unity by duplicating walking foes, implementing a script with start and update overrides, and rotating via quaternions toward left and right.
Create an empty game object for the flame thrower with a flame particle system and collider, then script the flame invincible so bullets pass through while it harms the player.
Design a shooter enemy in Unity that detects the player within a sphere cast all search radius, using it to trigger shooting bullets and handle basic enemy setup.
Create an enemy bullet in Unity that hurts the player on trigger enter. Extend the bullet, set speed and damage, destroy after hit, and test the shooter.
Implement a shooter that spawns enemy bullets with a three-second cooldown, instantiating a bullet prefab at the shooter's position and directing fire toward the player.
Learn to implement burst fire in Unity using coroutines, spawning multiple bullets with configurable burst length, interval, and vertical noise to create varied shots.
Set the max distance to zero and center the fear cast on the shooter enemy as the player nears. Tweak the fear collider and search radius to constrain bullets.
Create a turret enemy that tracks the player, rotates to face them, and shoots bullets using a dedicated bullet prefab, with a defined search radius and hit detection.
Design interactive doors and button puzzles in Unity by creating a door with a trigger button and a movable container, using a lerp-based open animation.
Learn to create an interactive button in Unity that opens a door using a trigger collider, a simple script, and visual feedback with materials.
Create a reusable trigger element script in Unity that supports triggering doors, platforms, chests, or teleporters, wiring a button target to call overridden trigger methods and convert them into prefabs.
Learn to implement a timed button in Unity that activates a door for a set duration using a countdown timer, pressed duration, and reset logic.
Learn to design moving platforms in Unity by building a moving platform with movement offsets, speed, and wait times, using 3D objects, coroutines, and lerp for dynamic level design.
Create a simple Unity teleporter by building a two-cube exit, applying a blue material and a particle system, and using a trigger collider with a teleporter script that links exits.
Define a private just-teleported flag, expose it via a public property, and use a guard return in on trigger enter to prevent the infinite loop.
Learn to make teleporters respond to triggers by extending the trigger element, overriding trigger methods, and controlling particle systems and colliders, while wiring game buttons to doors, teleporters, and platforms.
Learn to implement robust trigger patterns for doors, teleporters, and moving platforms in Unity, managing start and triggered states, disable behavior, and reliable testing to ensure correct, maintainable gameplay.
Define a cutscene trigger region with a box collider to move the camera to a target position using lerp, then return and disable the trigger after activation.
Learn to lock and unlock player controls during cutscenes by routing control through the game camera, avoiding direct player references, and ensuring smooth resumption of gameplay.
Learn to create and rotate power ups in Unity, including invincibility and super charge, using trigger colliders, a power up type enum, and a simple collection flow.
Create a reusable Unity power-up routine with a fixed duration for temporary boosts, using a blink visual cue and a power-up type enum to manage a supercharged state.
Learn how to implement a supercharge power up in a Unity action shooter by routing the charge shot timer to its full duration, enabling overpowered bullets and clear progression.
Create an invincibility power-up in Unity by duplicating the supercharged power-up, extending duration to 10 seconds, updating visuals with lime color, and adjusting collision logic to prevent damage during invincibility.
Create and optimize a Unity user interface using a canvas, texts, and anchors. Learn to use canvas scaler for different aspect ratios (16:9, 4:3) with reference resolution and pixel-perfect positioning.
Learn to implement health and time texts in Unity using a game controller script, with proper text sizing, localization awareness, and readability through a background bar.
Design a power-up bar in Unity by scaling a green image to reflect duration, anchoring it to the top bar, and updating it via a game controller event.
Learn to implement and wire up a collect power up event in C# using delegates, a void handler, and an on collect power event, enabling decoupled game object communication.
Animate the power bar with a coroutine on power-up collection, using elapsed time and duration to scale the bar and display the power-up name in UI.
Master Unity cutscenes by moving the camera away from the player, using top and bottom black bars with on-screen text, and coordinating start/end with game controller events.
Create a pause feature by adding a pause button, wiring it to a game controller with on-click events, and using time scale to pause and resume gameplay.
Master scene navigation in Unity by creating and saving new scenes, wiring a pause menu with resume and menu buttons, and loading scenes via Scene Management and build settings.
Learn to use the magic of voxel to create pixel-like objects and master basic camera controls, including orbiting, panning, and zooming with mouse and keyboard.
Explore magica voxel tools in this crash course, resizing the work area and painting with line, circle, and square brushes. Learn erase, mirror axes, and color and geometry modes.
Complete Beginner's Guide to Building a Game from Scratch in Unity® with Pixel Art in MagicaVoxel & Photoshop.
This course was funded by a wildly successful Kickstarter.
Join Mammoth Interactive step-by-step in building a fully featured game from scratch. We show you how to make all the code and art for the game.
You don't need any prior coding or digital art experience!
Glauco Pires takes you through the process of coding a game in Unity® from scratch. Kevin Liao teaches you how to create all the artistic elements you will need to complete the game. Kevin will teach this section of the course in MagicaVoxel and Photoshop to make original art.
The beauty of taking an online course like this is the ability to replay any of the lectures at any time. There is no time limit or final tests. You get to learn at your own pace with a practical model method of learning.
This course is project-based, so you will not waste time on useless coding practices. We feel that project based training content is the best way to get from A to B. Taking this course means that you learn practical, employable skills immediately.
Learning how to code is a great way to jump in a new career or enhance your current career. Coding is the new math and learning how to code will propel you forward for any situation. Learn it today and get a head start for tomorrow. People who can master technology will rule the future.
You get full lifetime access to this course for a single one-time fee. Enroll today to join the Mammoth community!