Asteroids Clone


This slideshow requires JavaScript.

For our final game project in first semester we had the choice to make a 3D game! Cloning asteroids was definitely going to be fun, but we had no experience using a 3D engine. A number of students chose to keep it 2D, but I decided to use the Unity 3D game engine to make mine. This was quite a challenge, just learning how to create gameobjects and prefabs in Unity was daunting, but even more so was figuring out how to make everything move in a game world!

I decided to do as many online Unity tutorials I could get my hands on. I learned a lot from them and eventually had enough knowledge to begin to attempt making my first 3D game. I took a lot of what I learned from all those tutorials and incorporated it into my own Asteroids game. (The site I went to was:, in case you were wondering. There are a number of newer tutorials on there now).

The requirements for this game were for the player to be able to fly around, shoot and avoid incoming asteroids, acquire power ups and/or extra lives, have an enemy ship attack the player, increasing difficulty as time went on and have the ability to save a high score. I got pretty much all of the above requirements in as you will see in the slideshow above. The models and art work were not the best as you can see, but I had no 3D modelling skills at the time, so I just used Unity 3D primitive shapes and combined them to make the player and enemy ships. To all those Mass Effect fans out there you should recognize the colours of the players ship! 😉

I had a lot of fun making this game and learned a significant amount about the Unity 3D engine which I still use to this day. I ran into a number of difficult challenges during the making of this game, but none more frustrating than gimbal lock, which occurs when 2 of the 3 axes of an object align themselves. This results in a ‘locking’ up of the aligned axes and your object will not move the way it is supposed to. I had to do some research on this in order to find a work around for this issue. I ended up using quaternions to fix this, which I wont get into right now since it is a difficult topic to explain!

All in all it was one of the more challenging games I’ve made so far, but also one that I learned so much from! I couldn’t believe I actually got the game finished on time.

Game started in March 2014 and completed in April 2014.


%d bloggers like this: