Day 1


I started my project with looking for some art I could use. Me being a programmer, art was my weakest link, so I thought it would be smart to let it dictate the type of game I would be making. On Kenny Assets I found a spaceship pack that had everything I needed to make a simple game.

After I had loaded it into Unity I thought I would first create a practice mode. This solved a few problems at once:
1. The game needed 2 scenes that weren't menus and the practice mode could provide that.
2. I could focus more on the ins and outs of the player first before getting to the enemies.
3. It provided a base structure for the feel of the game.

After putting some overly simple system in place for the targets, I got to work on the movement and shooting. I had a bit of a problem with the lasers which would hit your own ship once fired which I fixed using physics layers. Something that was way harder to solve was programming in good-feeling movement. I was trying to do it using Rigidbodies and had some trouble with acceleration and applying forces. Since this was a light project, I decided to throw away the physics approach and program in my own acceleration and 'appearance of velocity', which worked pretty well pretty quick. I also discovered that turning around quickly was somewhat of a hassle which I fixed by making you spin twice as fast when you are braking. That way you can do a cool little flick in the middle of your movement to turn around and get the jump on your enemies.

I now had a simple practice scene going on but it was missing the spice of sound. I looked for all my sounds on freesfx.co.uk and assembled the necessary effects. I also put in some background music which I got off from YouTube.

With my vertical slice in place I started on the menu. This was nothing more than some buttons next to the players ship. I thought it important to put the players ship on the menu so there wouldn't be any confusion about which ship you manned once the game started playing. I added a fade-in fade-out effect to make the scene transitions a bit smoother.

With that finished I worked on something that was already on my mind for quite a bit: adding score to the target practice. I knew I needed some sort of reason for the targets to be there or they still couldn't be considered much of a game element, and score is by far the easiest way to create reason for anything in your game. With some static handling I accomplished all that, which only left me to add your highscore to the PlayerPrefs and store it. Again I made a simple menu for the end of the target practice.

This gave me a small issue. The target practice and its menu were both using the same music, but it was jarring to hear the track stop and then start from the beginning again. This was easily solved with a small music manager on top of my audio source. The music manager is a singleton that gets replaced if a new instance plays new music. If it plays the same music, than the old instance is kept so the track isn't broken up.

Now it was time to create my story scene. I started with my player, whom I could keep as is and added an enemy whom I gave the same movement as the player was using. However, instead of being activated by key presses, it would be used through a Finite State Machine so the enemy could move on its own.

Since it was almost the end of the day, I finished at what I thought was a 'good enough' AI model that could at least showcase my plans to my teacher. Finally what I did was add a splash screen, as a finishing touch of polish.

Get Space Glide