Sound level dropoff from sources of different shapes

28 Views Asked by At

I'm looking into sound propagation for an audio system in a game engine and in the book "game engine architecture" I found that there could be different types of sound sources and the wavefronts would be different, here's a picture that's in the book.

omnidirectional, conical and directional sound sources

So the sources could be omnidirectional, conical and directional.

The omnidirectional part is rather simple and there is a lot of info on them. The sound pressure level for it is calculated as such $L_p\left(r\right)=L_p(0)-10\lg(4πr^2)$ where $L_p(0)$ is the sound level at zero distance. The sound pressure follows the inverse distance rule $(p(r)\propto\frac{1}{r})$ and the sound intensity follows the inverse square rule $I(r)\propto\frac{1}{r^2}$.

The directional sound occurs, according to Jason Gregory, in situations where sound is, for example, reflected from a large flat wall. However, I am not quite sure how the sound or the pressure level would fall off. The pressure and intensity, I could be wrong, but I believe follow the same laws, but for the sound pressure level there is no reason to think that it would be $L_p(0)-10\lg(4\pi r^2)$, I think it would make more sense if it was something like $L_p(0)-10\lg(r)$ or $L_p(0)-20\lg(r)$.

As for conical source the author of "Game engine architecture" suggests that

the intensity of the sound waves is maximum along the centerline of the projection “cone,” but falls off as the angle between the listener and this centerline increases.

Here I would assume that the falloff could be custom but how could, or maybe, how is it usually calculated.

So, to state an actual question. What are the formulas to calculate the sound level at a certain distance from sound sources of different shapes?

UPD-1:

I just found this website (sound propagation site) where they also introduce line sound source, and they say the falloff is 3dB per each doubling of distance, while in a point source it's 6dB.

So I believe the equation would be $L_p(r)=L_p(0)-10\lg(4pr)$ as the surface of a cylinder is $4prh+2pr^2$ and the height is considered infinite.