Sounds Of Shadows

Sounds of Shadows is a horror game based around echolocation. The player can only see through echolocation, which means they have to make sound in order to see, but this sound attracts unwanted attention. This results in a push and pull between making sound to check if you are safe, and the risk that that sound is the thing that gets you killed.

For the sound we used FMOD because of the more advanced audio capabilities and the very low learning curve.

Related article

Student talks audio design

An interview with me after the Dutch Game Awards to talk a bit about the development of the game and its nomination for the Dutch Game Awards best student game award.

Go to article


Process & Contributions

My responsibilities

I was the team’s audio lead, as well as the most experienced person in terms of audio on the team. This meant I was responsible for pretty much everything related to audio on the technical side, as well as responsible for designing important sounds.

I started by implementing FMOD and making sure things worked. After that, I got to work on the enemy sounds. The enemy was the main focus of our game, so we wanted to have sounds ASAP to ensure we had proper time to iterate.
When the enemy sounds were good enough, I moved on to the player sounds, as well as setting up the volumes and reverb for level 1.

After finishing all that work, we were already quite deep into development, and most the work left was iterating on sounds I had already made, adjusting the mix based on test data, updating reverb and volumes when new iterations of the levels were made, and debugging and implementing all of the audio.


Isabella’s sounds

Out of all the sounds in the game Isabella’s sounds were the most important. These sounds would be responsible for breathing life into the monster, which was the focal point of our game. I decided to get started with these sounds ASAP to give myself as much time to iterate on them. I started by gathering reference material, mostly taking inspiration from Alien and A Quiet Place. I then tried to replicate the sounds as much as possible using a whole load of different animal sounds.

When this resulted on only partial success I turned to human recordings. In the end I recorded one of our visual artists and myself and used that as a base for most of the sounds I was not able to get right yet. I used distortion, pitch shifting, delays and just general layering to give these human sounds a more monster-like feeling, as well as a healthy amount of EQ.

One of the most difficult parts about making Isabella’s sounds was cohesiveness, and getting the sounds to all convey different emotions while still feeling like the sounds come from the same creature. By switching to mostly human sounds taken from only 2 people this aspect became way easier.

Ambient clicking sound
Disengage sound (got scared off)
Attack sound

Why FMOD?

When I joined the team to work on this game I was presented with quite a big choice in the form of which audio engine to use.

Several factors influenced this decision. Firstly was what I was already familiar with, that being only Unreal Audio.
Considering the heavy emphasis on audio this game would have and the limitations of Unreal Audio I came to the conclusion that it would not be a great idea to use Unreal Audio for this game.

Because at this point I only knew how to use Unreal Audio I knew that whatever I chose, I would need to learn quickly. I would not be the only one learning to use the audio engine either. While I would effectively become the audio lead for the team, there was 1 other team member dedicated to audio who knew even less than I did.

These factors combined and the fact that I wanted to learn how to use actual middleware lead to me choosing FMOD specifically for this project.
FMOD’s approachability made it so that I could quickly learn how to use it, and in turn teach the other audio dev how to use it. The added features that FMOD offers when compared to Unreal Audio also were a great benefit to the game as a whole.


Player sounds and uncertainty

While making the player’s sounds there was a lot of uncertainty in various forms.
For the footsteps the uncertainty was the player character’s leg count. For the soundblast it was the length of the charge-up.
Despite all of this uncertainty these sounds had to get made, so I found ways to work around it.

Instead of making a footstep sound loop that plays and stops playing when the player starts moving, I made a singular footstep sounds that gets triggered in code repeatedly. Then after the decision was fully made for how many legs the player character had I could adjust this timer in code to reflect the footstep frequency of our player character.

For the soundblast I simply went at it as I usually would. It would be a way to scare off Isabella, and serve as a way to see the world around the player. This gave me the inspiration for a sonar-like sound and add some punch to it to make it feel impactfull to scare off Isabella. I decided to keep the actual soundblast seperate from the charge-up sound due to uncertainty with the charge-up sound itself.

The charge-up sound is what I would call my magnum opus of using FMOD and parametric audio design. Without a clear time for the charge-up I decided to simply design the sound in such a way that a parameter would be responsible for the acutal charging effect, with no correlation to time within the actual audio event itself. This way the designers could simply update the parameter from 0 to 1 over the course of the charge-up, and them changing the length of the charge-up would automatically make the sound charge faster and sync up with their new desired timing.

Soundblast
Soundblast charge-up