When creating a sound effect for a movie you’ll know that the audience is only going to hear it on one specific occasion, and you’ll likely build it up through editing and layering different sound elements to get just what you want.
Most games, like sports, are about skill and mastery, so the player will be repeating similar actions again and again, and consequently they will be hearing the same sounds again and again. The trouble is that we’re very sensitive to this kind of repetition, since it just doesn’t happen in real life.
Video: Explosion Baked
The obvious answer is just to have loads and loads of sounds but it would be far too much work to create 30-40 versions of every sound in the game (plus there are obviously limitations as to how much we can fit on a disk!).
If we look at our ‘explosion’ sound again we can see that the final sound is made up of different characteristic components, and this idea is key to starting to think about procedural approaches to sound design.
What we want to do is to keep these components separate when we import them into a game so that we can recombine them in different ways at run time. A lot of sounds in games aren’t ‘sounds’ at all, they are systems of sounds. This kind of procedural approach requires a different way of thinking, and sometimes different kinds of sound assets, since we often want to isolate the individual components that make up a sound.
When we bring these components into a Sound Cue in the Unreal Engine we can build a system of playback, and by having a few different versions of each component we can randomly combine them to create variation.
Video: Explosion Components
By taking this approach we don’t need thousands of complete sounds in our game to be able to get thousands of different sounds out of the system. Randomizing the combinations of layers can vastly increase the number of potential outcomes with only a few additional sounds.
By taking this approach we don’t need thousands of complete sounds in our game to be able to get thousands of different sounds out of the system
In the above example we have four sets of three possible sounds that can potentially be heard so this will give us 81different sound outcomes. If we added just one other ‘Crack’ element then we’d get 108 potential sounds.
We can increase this variation even more by adding some slight randomized delays and modulations of pitch and volume to each element, giving us.. erm… a very large number of possible outputs.
Video: Explosion Delays and Modulation
Another thing we might want to do is to change the sound depending on what was being blown up, or the materials of nearby objects. Again by keeping these material components separate we can choose to layer them into the Sound Cue when appropriate by using a switch.
Popular on A Sound Effect right now - article continues below:
By getting information from the game about what type of material is being blown up we can use this to control the switch, and therefore which material components of sound get added to the overall explosion sound.
In writing the book we made a conscious decision to term this kind of sound design, that is typical in the current practice of game audio, ‘Procedural Sound Design’ to differentiate it from ‘Procedural Audio’.
Andy Farnell, who coined or at least popularised the term ‘Procedural Audio’ sees it as any kind of system where the sound produced is the result of a process. He describes these ideas more fully here. So under that definition, as soon as you set up any kind of system of playback you could see it as being procedural audio.
However there has been a lot of important work and progress in terms of procedural audio for games in the last few years (see http://proceduralaudionow.com/), and this has encompassed a variety of techniques, but there has been some emphasis on the idea of these procedural systems being synthesis based, which ultimately is probably the most flexible solution for interactivity.
This is a specialist field which we don’t go into in any depth in the book since there are other great books out there on this (not least Andy’s book ‘Designing Sound’). In the book we attempt to describe the range of procedural approaches by saying, “This approach to sound design exists on a spectrum from procedural sound design, where we tend to be manipulating pre-existing assets, to procedural audio, a term more frequently used when systems of synthesis are used to generate the sounds themselves (with much in between that combine both approaches)”.
To throw another thing into the discussion, when discussing music systems we also use the term algorithmic, which again could be used to describe any kind of system of playback. Although we could just call this procedural music (as others such as Karen Collins have done), but we felt it worth preserving and highlighting ‘algorithmic’ given the long history of algorithmic techniques explored for music in the past, which a search for ‘procedural music’ is going to miss.
Video: Explosion Materials
Now we have all the elements of a sound as separate components we can also do other things with them, like spatialize them around the player in different ways. For the Game Audio Implementation book we built a simple system that will throw sounds around the player for people listening in 5.1 or 7.1. This could be used for elements of the explosion itself or for debris.
This was done in Unreal’s Blueprint system – which looks a bit daunting at first but once you get the hang of it you can pretty much do anything you might dream up!
Video: Explosion Spatialized
By using a procedural approach to sound design we now have an explosion sound that’s different each time, is ‘aware’ of the different materials involved in the explosion, and spatializes around the player in stereo, 5.1 or 7.1.
Please share this:
from a myriad of independent sound creators, all covered by one license agreement
- a few highlights:
+ free sounds with every issue: