
The focus of the project is on developing the game elements and mechanics. We will develop the following game elements:
Star that gives scoring,
Mushroom that gives lives,
Enemy that takes lives but can be destroyed if the player jumps on its head.
We will have a level management mechanism to reload level after a strike, and when reaching the end of the level we will load the next.
Big emphasis on physics and having more than one collider on a game object.
Get yourself familiar with the genre of Platformer before you start: watch Jetpack Joyride and Mario gameplay videos.
Set up the environment
Player movement
Colliding with walls
Diving deeper into Rigidbody and understanding how to use it to jump.
We will switch the movement mechanism we used so far and use rigidbody also here.
This would solve an irritating bug.
Set up the camera to follow the player wherever they go
Set up walkable platforms on the level
Planning level design
Let's add 3D assets from the Mario World (free to use!)
Deciding gameplay mechanics for the game elements
Creating the game element logic
Adding prefab
Replacing the 3D visual model
The LifeMushroom would be a collectible that gives lives to the player upon collecting.
Set up the game mechanics
Write the code
Fix bugs
Add 3D visual model
The TreasureBox (or ExplodableBox) would provide the player with a reward coming out of the top part, once player hits it from the bottom.
Set up the game element
Write the code
Fix bugs with the trigger placement
Add 3D visual model
When bumping this box, a LifeMushroom will come up from the top end
Add the mushroom inside
Use another collider to trigger the box effect
Control the Mushroom activation process
Solve bugs
Enemy would damage the player if they hit from either side, but would be killed if the player hits them on the head.
Write code, and add a second collider
Create a knockback effect with rigidbody
Add 3D visual model
Create a trigger for the event of reaching the end of the level
When player fails or falls through holes in the floor, we will make sure the player restarts the level.
Mechanism to load new scenes from code. This allows us to switch between levels or restart them.
Level design and organizing game elements
Solving a bug in the floor game element (the platforms)
Review two methods to organize a hierarchy:
First is into groups of items
Second is into groups of sequences. This allows reusability and creates levels faster
What to do next and where to go from here.
We would be happy to see your results!
You can find the source code of the resulting project I have created.
Remember Mario? Let's build such a gameplay !
Build a complete platformer experience while focusing on the systems and design patterns behind one of the most iconic game genres. In this course, you will recreate core mechanics inspired by classic platformers, developing everything from player movement to interactive game elements, while following a real-world workflow from prototype to a functional game.
You’ll start by setting up the environment and implementing player movement using Unity’s Rigidbody system, including jumping, collision handling, and a side-view camera that follows the player. From there, the course shifts into structuring your scene and organizing your hierarchy—an essential step for keeping projects scalable and maintainable.
A major part of the course is dedicated to building gameplay elements. You’ll implement collectibles like coins and life mushrooms, interactive objects such as treasure boxes, and enemies with more advanced behavior—using multiple colliders to differentiate between damaging the player and being defeated. This introduces practical use of triggers, physics interactions, and layered game logic.
You’ll also handle game flow by implementing level completion triggers, restart mechanics, and scene loading, creating a full gameplay loop. Along the way, you’ll iterate on level design, fix real bugs, and structure your scene for reusability.
This course is part of the FLUX Unity Club, so you’re not working in isolation. We are a community focused on Unity developers on all levels, where you can ask questions, share progress, and get personalized support as you continue building beyond this project.
If you don't have Unity installed yet or still need even more basic assistance, please don't hesitate to take our FREE course, First Steps With Unity: Installation and Core Skills. It was made especially for that situation.