Modelling Distance

Distant sounds are quieter than nearby ones. This chapter explains how much quieter and why, with creative ways to exploit the 'rolloff ' effect to help users understand their simulated environment. Tonal and reverberant modifications are discussed, as well as direct loudness.

Six factors determine the rolloff associated with a given distance, but their interpretation varies, sometimes in physically implausible ways. The practical need for a MinDistance is explained, along with differences in interpretation of MaxDistance in DirectSound3D and FMOD middleware versus OpenAL, XAudio2 or Wwise, and ways to prevent double-attenuation. The concept of Noise Floor is explained and justified. Optimised C++ code is presented to update smooth rolloff curves dynamically, including the concept of dirty flags.

The chapter also notes the effects of fog, rain, hail, snow, humidity, turbulence, temperature, time of day, wind and thermals. It explains the concept of audio depth of field and why it's useful. The implementation and implications of propagation delays are also explored.

Rough gamma curves
An early rough version of the rolloff 'gamma curve' diagram included in the book - this draft was produced with a short QL SuperBASIC program; the book includes equivalent C++ and vector-graphic renditions.

Further reading

Objects, Voices, Sources and Handles - previous chapter abstract.
Implementing Voice Groups - next chapter abstract.
Return to the index of chapters.
Click here to get your own copy of Beep To Boom.

Copyright © 2019 Simon N Goodwin     [';']