Shape Shooter Game Tutorial: Music Production

In this article we will be dissecting and taking a detailed look at the music that I produced for the (soon to be released) Gamedevtuts+ Shape Shooter game tutorial. Propellerhead's Reason (version 6.5) was used to create the music and it is the main focus of this article.

This tutorial is part of a series on Gamedevtuts+: Cross-Platform Vector Shooter. If you enjoyed this post and are interested in game development, it's definitely worth checking out.

The Music

Before we dive into anything specific, here is the music in full ...

You can download the original Reason 6.5 source file for the music by clicking on the big download button at the top of this article. The end of the music might sound a bit strange but that is due to the fact the music has been created to loop seamlessly.

When I was asked to produce this music I was not given a hard set of rules to follow, I was simply told the music was for a Geometry Wars inspired game - that was awesome because it gave me the opportunity to try out various styles of music.

Initially I went for something that sounded a lot more retro and 8-bit in nature, but while I was working on the music I found myself getting bored with the overall sound, probably because the 8-bit thing has been milked to death over the last few years. I eventually decided to create something that sounded a little more modern while keeping the arcade game vibe intact - hopefully I have managed to achieve that, it would be great to hear what you think.

The rest of this article will be focused on the individual instruments used in the music, with a couple of sections about automation and mixing to finish things off. All of the instruments, apart from the drums and percussion, are Thor synthesizers that use simple custom patches created specifically for the music.

The Bass Synth

This is what the bass synth sounds like ...

The bass synth produces a standard mono bass sound with an analogue edge to it, but it adds a lot of warmth to the overall mix of the music. The sound is created using a single square wave with a touch of pulse width modulation to avoid a pure square wave sound. I am also using Thor's filter envelope to give each bass note a bit more punch and emphasis.

Thor's first rotary dial is connected to the frequency and resonance dials of the low pass ladder filter, and to the gain dial of the amplifier. This produces a nice squelchy filter control.

The Sizzle Synth

This is what the sizzle synth sounds like ...

The sizzle synth produces a nice wide sound that compliments the bass and makes the mix sound a lot bigger and heavier - the sizzle synth and the bass synth are the main drivers of the music, everything else in the music is built around these two sounds.

Even though this synth sounds more complex than the bass it was actually simpler to create. I am using a single multi-oscillator which is more or less set to its default settings, the only adjustment I have done is to increase the detune amount slightly. The wideness of the sound comes from Thor's chorus unit.

Thor's first rotary dial is simply connected to the frequency dial of the low pass ladder filter.

The Alien Synth

This is what the alien synth sounds like ...

The alien synth produces a nice, sharp, clean sound that cuts through the mix. It is the main lead sound in the music and, despite its simplicity, it is the most complex synth that was created for the music.

Two prominent characteristics of the synth are the amplitude ramping and the portamento. The amplitude ramping was added to give the sound some bounce, and the portamento was added to give the sound more of a 60s sci-fi kind of vibe - I think it sounds quite good.

The amplitude ramping is the result of the LFO being connected to the gain dial of the amplifier. Thor's first rotary dial is connected to the frequency dial of the low pass ladder filter, and the second rotary dial is connected to the release slider of the amplitude envelope. Those two rotary dials are not actually used (automated) in the music, they were set up to allow the synth sound to be easily tweaked.

The Arpeggio Synth

This is what the arpeggio synth sounds like ...

The arpeggio synth, like the bass synth, produces a fairly standard sound but it works well within the music. I used a multi-oscillator to give the synth a fuller sound because a standard square or sawtooth wave would have sounded a bit too plain compared to everything else in the mix.

Thor's LFO is connected to the frequency dial of the low pass ladder filter, and to the pan dial of the amplifier. This makes the synth a lot more interesting to listen to as the sound moves around and sweeps through its filter.

The Disturbed Synth

This is what the disturbed synth sounds like ...

As its name suggests, the disturbed synth has a very disconcerting sound to it. I wanted a sound that could be dropped into the mix occasionally to add a bit more energy and to keep things interesting.

The scream-like sound the synth produces is a result of Thor's LFO being connected to the detune dial of the multi-oscillator, the LFO tunes and detunes the synth over time. Thor's first rotary dial is connected to the frequency dial of the low pass ladder filter but it is not automated in the music, it was set up so I could easily tweak the synth sound if needed.

Automation

When it comes to automating synth parameters (filters, pitch bend, and so on) I like to edit the automation directly in Thor's sequencer because it gives me a lot more control - I could for example slowly sweep a filter in one bar of music and then aggressively ramp the filter in the next bar. The following image shows a section of the automation for the bass synth and the sizzle synth ...

In that section of the music the bass automation (at the top) is super simple, I am ramping the filter up and down in a linear fashion to bring the bass into the mix and to drop it out of the mix. The sizzle synth, on the other hand, is going a bit crazy in that section of the music. I am aggressively ramping and dropping the filter to make the sound much more interesting, it adds a lot of interest and movement the music, and it sounds quite good in the mix.

The automation block at the bottom-right of the image slides the pitch of the sizzle synth down at the end of the section, it is quite a nice effect to add to music occasionally.

Mixing

When it came to mixing the music the main thing that I had to consider was the fact the music is for an arcade-game style shooter - I did not want the low frequencies of the music to interfere with any of the game's sound effects, and if the music was played at a low volume I did not want the low frequencies of the music to remain prominent. The solution to this was simple enough, I used high pass filters to remove a lot of the low frequencies.

Removing low frequencies from kick drums is generally a good thing to do, especially if you have a bass sound with a lot of low frequencies, it prevents the kick drum and bass sounds from becoming cloudy/muddy in the mix.

I also used low pass filters to remove high frequencies from a lot of the sounds because I did not want the music to sound too sharp. Sometimes a nice crisp sound is what you will want for certain styles of music, but it is not ideal for arcade-game style music because the music needs to sit in the background and allow the sound effects to be clearly heard - most of this can be achieved by adjusting the volume of the music and sound effects in a game, but the frequency range of the music is always something that should be considered when mixing the music.

The last thing I should cover is the use of the compressors on the bass synth and sizzle synth channels. Because those two synths are the main drivers of the music and needed to sound quite aggressive and relentless, I used a bit of compression to raise any low amplitudes in those sounds.

Conclusion

I had a lot of fun creating the music and I think it turned out well. It would be great to hear your thoughts. Please leave a comment below.