Positional Audio in Godot?

Hello. I was wondering if Godot supports something akin to Positional / 3D Audio for sound emitters. Something like this video:

If so, are there any tutorials for this? I can't seem to find any sources for 2D, however 3D seems to be covered.


Tags :

Best Answer

Answers

  • MegalomaniakMegalomaniak Posts: 1,598Admin

    Uuh, Binaural audio recording involves microphones integrated into a sculpted head mesh, and more importantly ears.

    https://en.wikipedia.org/wiki/Binaural_recording

    The one big downside/failure of the technique is that we all have uniquely shaped ears and our brains have adapted to infer the positional information according to our own ears.

    I'm not sure how you would go about modeling any of that inside of a game engine though. I honestly think the normal 3D positional audio system we have in game engines is sufficient though.

  • MegalomaniakMegalomaniak Posts: 1,598Admin
    Accepted Answer

    @SledgehogSoftware said:
    I can't seem to find any sources for 2D, however 3D seems to be covered.

    I think you might be searching for this:
    http://docs.godotengine.org/en/3.0/tutorials/audio/audio_streams.html#audiostreamplayer2d

  • @Megalomaniak said:

    @SledgehogSoftware said:
    I can't seem to find any sources for 2D, however 3D seems to be covered.

    I think you might be searching for this:
    http://docs.godotengine.org/en/3.0/tutorials/audio/audio_streams.html#audiostreamplayer2d

    Yep, that might just work. I could add the SFX to its own sound bus, and then use http://docs.godotengine.org/en/3.0/tutorials/audio/audio_buses.html#panner to pan the audio left and right.

    Should've been more clear on my motives, I simply wanted a sound effect that could move from one speaker to another :)

  • MichaMichaMichaMicha Posts: 2Member

    @Megalomaniak said:
    Uuh, Binaural audio recording involves microphones integrated into a sculpted head mesh, and more importantly ears.

    Yes. Binaural recording with a dummy head is one technique of doing binaural audio. But this technique is useless for games, since the directional information is baked into the recording and cannot be changed at runtime (when the player turns their head, for example). For games, one would use DSP algorithms instead, that, at runtime, convert mono input into binaural output using spatial information from the game engine.

    The one big downside/failure of the technique is that we all have uniquely shaped ears and our brains have adapted to infer the positional information according to our own ears.

    True, but that doesn't mean the technique fails to work. It just means it works differently well for different people... and for pretty much everyone, it works at least a little bit. Also, the algorhithms are getting better and better, and individual ear scanning might come soon.

    I'm not sure how you would go about modeling any of that inside of a game engine though.

    There are many algorithms used in games, like the one in Oculus Audio SDK, Google Resonance or Steam Audio, offering Plugins for the major game engines. Sadly, I know of no integration for Godot, though.

    I honestly think the normal 3D positional audio system we have in game engines is sufficient though.

    I disagree strongly. The effect is quite useful. And for VR, it's absolutely mandatory imho, since not using it pretty much breaks the immersion.

  • MegalomaniakMegalomaniak Posts: 1,598Admin

    @MichaMicha said:

    I disagree strongly. The effect is quite useful. And for VR, it's absolutely mandatory imho, since not using it pretty much breaks the immersion.

    Indeed, VR is most certainly a unique case in this.

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file