ABSTRACT

“Reverb is to sound as lighting is to graphics.” This chapter pays special attention to directional and 3D reverb and real-time glitchless parameter changes, rarely discussed but of paramount importance for simulations and enhanced reality. It deals with moving sound sources and moving walls. It discusses four ways to implement reverb, with special reference to interpreting and tweaking the parameters that typical reverb units expose. It says what to expect of a good interactive reverb, finding suitable code and the pros and cons of making your own versus using built-in platform-optimised units. It notes ways to reduce reverb update overhead and avoid performance spikes, contrasting actual reverb unit configurations in mass-market games.

It covers the I3DL2 standard and Ambisonic 3D reverb, generation and interpretation of early and late reflections, virtual emitters, reflection lines, snow and forest filtering, reverb distance cues, spatialised and directional reverberation, decorrelation for envelopment, buffering and memory bandwidth, cache considerations and architectural optimisations.

As well as commonplace Schroeder-Moorer systems like Freeverb, the chapter compares feedback delay networks, all pass loop reverbs and impulse-response convolution, including where to get free 3D impulse data and how to edit spatial properties on the fly.