Game Audio Programming in C++
Game audio programming is a sort of dark art practiced and understood by its few practitioners, but audio is an important and vibrant part of any game. There is a huge body of knowledge and history here, but the C++ standard, unfortunately, has yet to acknowledge the existence of audio output devices. In this talk we'll discuss the current state of the art in game audio programming, and what steps we can take toward bringing real-time audio to the C++ standard. We will begin with first principles: representing waveforms and playback of sounds. With a few basic mathematical principles out of the way, we'll discuss how a low-level mixer works, and the sorts of tools that game audio builds on top of it. Finally, we will present a set of abstractions that are useful for real-time audio, and how they can be brought into the C++ standard.