This series shows the entire process of creating a fully featured, polished, 2D game in Unity 4.5! We show many of Unity's 2D features, such as the sprite renderer and editor - as well as animation, sound, custom character controllers, and more! At the end of the series, we wrap up by constructing two fully featured levels for our game.
The purpose of this series is to lead by example; and as a result, everything we discuss will be put to immediate use in the form of completing the Level.
This video overviews the course and shows a sneak peek of the game we will be building.
In this video, we start learning how to cut up sprite sheets and place individual sprites in the world.
In this video, we'll cover Object placement and put together some prefabs for our round tiles and for our player so that we can combine our sprites into objects and reuse them later.
This video shows the creation of a moving platform script. Sounds basic? Well, in addition, we add a simple Unity editor extension that allows us to visualize our platforms' paths in the editor itself!
We start with a conceptual overview of our controller,and wrap up the video by creating our class and method stubs to be filled in later.
We make our level ready to be used with our custom character controller. That means we have to create the proper colliders for our tile prefabs.
We take a look of how to correct mistakes made by using the sprite editor. Hint: it's actually pretty straightforward!
When we fill in our character controller implementation, we need some way to test it, right? In this video, we create the component that will handle input and tell our (currently empty) character controller what to do.
Things are going to get a bit crazy in this video, where we show how to handle horizontal movement. This may require a bit of math, but we'll walk through the entire implementation line-by-line!
Fortunately, our vertical movement is very similar to our horizontal movement. In this video, we get the code written that handles both jumping, gravity, and falling.
Although the game we designed doesn't have any slopes in its levels, our character controller wouldn't be complete if we didn't handle moving up and down angled platforms.
Speaking of platforms, handling moving platforms actually a little more involved than what you would think! In this video, we write code that allows us to be anchored to a moving platform, no matter what mechanism the platform is being moved by. We also show a use-case for some of the event logic we wrote by writing a jump pad platform component.
Well, our character is now properly planted on a moving platform: but what happens if a platform moves *into* our character? This video shows how we can add a little bit of logic to our character controller to handle this situation.
In this video, we create a mechanism to modify parameters of the character controller when the player is inside a certain volume. This can be used, for example, giving different physical rules to areas marked as water.
In this video, we put together our camera controller that a) constraint to the level bounds, b) gives a nice margin for our player and c) smoothly follows our player around.
Now that our camera is moving with the player, we add a nice background parallax effect.
In this video, we show a quick trick to allow proper layering of our particle effects.
We start by stubbing out our level manager and placing our checkpoints.
Now we get into the meat of the level manager by implementing checkpoints in our game.
We now put together our basic point system and have the game HUD that displays those points.
Finally: we create our point stars. Sounds easy, right? Well, we also have to handle the case when a player dies before reaching the next checkpoint. Instead of reloading the scene, we write a reusable system for re-setting up the level in the case of a player death.
In this video, we implement our player health as well as the floating health bar for our player. We also write a script that can deal damage to the player, without killing him
Currently, we don't have a lot of visual feedback for taking damage, or getting points. We fix that by creating a floating text manager that allows us to show bits of floating text.
In this video, we create our cannon object that shoots projectiles in a certain direction.
We will now create some particle effects for our pathed projectile: because, why not?
This video sets up the projectile system that can be shared between our player and other actors in the game.
This video shows the creation of the MICROPHONE OF MASS DESTRUCTION! ... which is the thing that the player shoots when he fires.
In this video, we show how to use our existing scripts - both our character controller and our projectiles - to create a basic enemy AI.
We put our instakill and follow path scripts together to create saw obstacles in our game.
The final video in this section shows how to create health packs for our player.
We first show how to use our camera bounds to bound our player to the level. We also allow for different behaviors depending on if the player hits the left, top, right or bottom edge of the level.
Now we put together some basic sounds for our game!
It wouldn't be a full game if we didn't have a start screen and multiple levels, right? So in this video, we fix that!
This video introduces the Animation window and how to create simple keyframe-based animations. We also introduce simple animation controllers that, with a little bit of scripting, can make complex transitions between all of our states!
This video simply goes through our basic set of player animations.
We tie our player animations together via a more complex animation controller.
This video shows the creation of the first level.
Phew! We made it! We place our objects to create our second level, and conclude the series!
3D Buzz is a company dedicated to providing the world with quality technical education over 3D animation, programming, game design, and much more. We have been producing training videos since 2001, always pushing the envelope in the development of informative lessons with an engaging and personable format. We try to make the viewer feel more like they're involved in a classroom discussion with an energetic teacher as opposed to being stuck in a dry, uninspired, run-of-the-mill training video.
But 3D Buzz is so much more than just training videos. We maintain one of the most helpful online communities on the internet. We do our very best to keep in close contact with our community, and to make sure that when you're here, you feel at home.