Audio Programming & How To Learn It

Overview

Before you start, I want to highlight that this section is geared primarily toward the technical sound design & audio programming pathways, and not essential knowledge for other disciplines.

However, if you feel like sticking around for this one then I can assure you that you’ll learn some very interesting and useful things.

What Is Audio Programming?

Audio programming is probably one of the most mystified jobs in game audio, so here is a quick overview of the profession: https://www.screenskills.com/job-profiles/browse/games/audio/audio-programmer/

Put simply, we can use code to tell the game when to play a sound, and how to process it with reverb, volume, and lowpass filters to mimic the space the sound is in and the distance to the listener. We can also optimise the game by telling certain batches of audio files to load or unload from the memory based on all kinds of things like switching levels, entering certain areas, or spawning and despawning NPCs. This helps to improve the game’s performance.

Implementing sounds through code is also known as audio scripting. Technical sound designers are often required to know the basics of audio scripting to set up audio systems and implement sounds, but for now, we’re going to focus on audio programming, which is a career path that requires a lot of specific knowledge.

The specific tasks vary from job to job, but Guy Somberg sums up audio programming in general as “the art of working with sound designers to create the most awesome aural experience possible.” He explains this definition and shines some more light on what audio programmers are, what they do and how they do it in this excellent video. The video has timestamps so you can find the parts that particularly interest you: https://youtu.be/jY3tPM1oNyU

Resources

Epic Games have a free course all about Dynamic Audio in Unreal Engine: https://dev.epicgames.com/community/learning/courses/Eq/dynamic-audio/9ob/introduction-to-the-course

Learn the basics of C# to implement audio, build tools and make your own games in Unity: https://unity.com/how-to/learning-c-sharp-unity-beginners

Hack Audio is a fantastic place to learn the fundamentals of audio programming: https://www.hackaudio.com/getting-started/introduction/

The Audio Programmer is one of the best sources for learning audio programming out there. They have a Discord community to help newcomers and a bunch of excellent YouTube videos on the subject: https://www.theaudioprogrammer.com/

Jack Campbell has written a fantastic article on how to get into audio programming and where to start, as well as linking to some resources that helped him build a career in the industry: http://www.jackcampbellsounds.com/2020/06/07/audiocodingformusicians.html

Want to learn more about game audio?
Check out our Learning Roadmap!

Previous
Previous

Audio Middleware & How To Use It

Next
Next

Source Control Basics For Sound Designers