• Register
Post feature Report RSS Why We Use Fmod in our Game

In this article, we briefly explain why we opted to use Fmod Studio.

Posted by on

We, the Titan Forged Games game designers, like sound. Not just any sound as "oh, we are making the game, better have some sounds in it", but we know it is as important as the rest.
So, when fmod was available for free for indie developers there wasn't any doubt we should give it a try.
One of our members had already some experience with fmod designer, so the learning process wasn't so hard at the beginning. Of course it's getting more and more complex as we are trying to take the most out of it, but it's worth it.

My first argument, as a sound designer, was to save work and time to the programmer, which is also one of the sound designers, but this allows him to focus a bit more on other stuff.

Once fmod is nicely integrated with the engine (we use Unity), the requiring code is only to meet the parameters created in fmod in order to trigger the events.
For example, if in fmod I create a "low health" parameter, from, let's say, 1 to 0 in which 0.3 indicates that the health is so low that I want a warning sound for that, the
programmer will only have to create this parameter with corresponding values. Fmod will then trigger the sound I designed when "low health" reaches at least 0.3.

Fmod_parameter

Another great thing is the randomization of events. Randomization that we can control. On SLinki, we have sound-scape backgrounds with some animal species, and some machines. On a "normal" mode we would make an audio track with two minutes (if the level is really short) that it would be set to loop itself. What happens? The player hears the same track all over again, starts to predict the sequence that is in fact related to nothing else but the level. Repetition is the number one enemy of immersion, did you know? So, with fmod we very easily have "animal 1", "animal 2" and so on, "burst of wind", "machine 1", etc. but we randomize all this. Not only the triggering of each sound event but was well the volume, pitch and even where it is located in a 3D environment.

Fmod_random

In the picture above, "bird" is set to play in an interval between 4.6 - 7.6 seconds with volume and pitch variation. I can also set it to not to be triggered when Slinki enters a cave and ceases to hear sounds from the outside. Oh, did I meantioned how much space you save?
Let's see: one stereo wav file with 44100 Hz / 16 bit with a two minute length is 21.168 MB. How much is 8 birds chirping (and we don't need stereo for that), plus a stereo file with 5 seconds that is the sound of a distant machine, and some wind blowing through leafs that is seven seconds long? 0.882 + 1.2348 + 2.1168 Have the result? 4233.6 Less than 1/4 of an exhausting repetitive soundtrack. And for every instance we are able to randomize it and play it in whatever randomized parameters we want. Also, if you have your audio files in Mp3 - which usually happens for music for mobile games - the loop usually isn't seemless as the mp3 adds a few frames of silence, leaving a gap between every triggering.

Fmod also allows you very easily to set 3D distance parameters. In very simple terms this allows you to set how a sound event will sound over distance. Let us think of an enemy that walks back and forth within a certain distance; as our hero approaches this enemy, he will start to hear it better the closer it gets. I will ilustrate with an example that also proves why I work with sound and nothing else:

Distance_example_draw

These are the simplest and straight-forward advantages one can talk about at first glance. We think it's worth giving it a try!
We want to develop further in the next weeks. See you soon!

Post comment Comments
TriStarch
TriStarch

Oh wow, I hadn't seen that FMOD went free for indies! I'll have to look into it for my engine.

Reply Good karma Bad karma+2 votes
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: