Spatial audio in Godot: Dynamic acoustics update

Sdílet
Vložit
  • čas přidán 17. 01. 2024
  • FAQ: www.landervanregenmortel.com/...
    A quick showcase of the current WIP state of my spatial audio system in Godot. These past weeks I've been working on a system in which spatial acoustics are procedurally calculated based on the geometry of the level. My previous video showcased audio propagation, which is not included in this showcase.
    The range of different acoustics you hear is completely dynamic: The differences between being outdoors and indoors, different sizes of spaces, being outdoors but having large walls around, the sound source being in a different acoustic space than the listener, the resulting acoustics are all completely procedural. This means it is not required to set up individual audio volumes anymore to define the acoustic characteristics of a specific space, which can be a huge development cost depending on the fidelity the developer is aiming to achieve. Besides this solution working well for a static environment, this solution is great for games/experiences that are built around procedural environments, games with dynamically changing level geometry, and for developers or teams who cannot afford the cost, time investment, or complexity that comes with setting up believable acoustics in their projects.
    Even though it is completely procedural, I am currently working on a custom audio volume node that will give users control over the sound of a space, while retaining the advantages of the dynamic nature of this system. An initial version of these audio volume nodes is used at the end of the video, in the pit and the large underground chamber.
    To put my spatialisation system to the test, I've created a simple movement/footsteps audio system.
    My website: www.landervanregenmortel.com/
    --------------------------------------------------------------------------------
    Car model - skfb.ly/6sUFy

Komentáře • 281

  • @morgan3692
    @morgan3692 Před 4 měsíci +248

    Wow. Seems like the sound as much important as the graphics. The stairway room, the clock ticking, so immersive.

    • @smarttarded
      @smarttarded Před 4 měsíci

      A great point. I think good sound design can complement or is even more important than good graphics.

    • @ORTyOW
      @ORTyOW Před 4 měsíci +11

      Ofc it's important. Don't you ever dare to overlook it

    • @kovoneka
      @kovoneka Před 4 měsíci +9

      This video kinda shows us, on practice, how audio can enhance the experience, very helpful for game developers!!

    •  Před 4 měsíci +3

      Darkwood is a good example of how a simpler looking top down horror game has better atmosphere than most first person perspective games. Peak sound design there. The sound occlusion there is insanely good.

    • @ReclaimerTyphoon
      @ReclaimerTyphoon Před 4 měsíci

      I've heard that saying way too much lately. It's not true. You absolutely wouldn't buy, or play a game that has no visuals, and was only sound - but you would totally play a really good game that you could see, but the volume was stuck at "0". Shoot, I play Halo with the sound off all the time, and it's still exciting. The opposite would not be true whatsoever.
      Sound is *really nice to have*, and good sound can be transformative.
      But it's not "as important as the graphics". Outside of a game made for blind people, it will never be the case - I don't care how many thousands of years later we're talking.

  • @bank8489
    @bank8489 Před 5 měsíci +323

    my god this has been my dream for YEARS. how in the WORLD did you manage to do this. absolutely mad.

    • @ClockworkGearhead
      @ClockworkGearhead Před 4 měsíci +17

      My guess? Line of sight and filtering the sound from an average of the surrounding materials.

    • @techpriest4787
      @techpriest4787 Před 4 měsíci +11

      You will buy crappy games and play them and be happy. No seriously. Klaus said so at the World Economics Forum. It is like feeding the pigs. They just eat it.

    • @bank8489
      @bank8489 Před 4 měsíci

      @@techpriest4787 what

    • @Andrew90046zero
      @Andrew90046zero Před 4 měsíci

      @@techpriest4787 ?

    • @Jet_Set_Go
      @Jet_Set_Go Před 4 měsíci

      @@techpriest4787 ?

  • @Duckamoly
    @Duckamoly Před 5 měsíci +28

    outsideness is a beautiful name for a variable

  • @mumblety
    @mumblety Před 4 měsíci +143

    I would LOVE to see a video or a paper on how this is done!

    • @animestation7225
      @animestation7225 Před 4 měsíci +13

      it's like raytracing of light/pixel hitted to geometry of the mesh, but audio can be processed faster than the each light/pixel, that's y we can hear this in realtime

    • @ThatsMySkill
      @ThatsMySkill Před 4 měsíci +1

      @@animestation7225 is that really how it works? that sounds awesome. i mean it definitely makes sense. it would have to trace all around the player. i would have guessed its more like it senses how far away an obstacle is from the player and calculates it from there. maybe with voxels that travel with the player

    • @animestation7225
      @animestation7225 Před 4 měsíci +3

      ​@@ThatsMySkill I think you are talking about HRTF (Head-related transfer function), which for example is implemented in the game PUBG PC (Steam or Epic Games)

    • @ThatsMySkill
      @ThatsMySkill Před 4 měsíci +2

      @@animestation7225 just reading up on it seems like its not quite what i meant. as far as i understand it HRTF only calculates the direction sound is coming from but doesnt calculate sound going around corners or reverb in big rooms. im not into the matter at all i just thought it would make sense to draw a cloud of invisible voxels around the player that recognize a wall when a voxel collides with a wall around you and then calculates on how the sound waves should bounce/ distort. at least for reverb that sounds like a good approach if you dont wanna use that raytracing technique you mentioned. this is just me straight talkin out of my ass tho so no idea what the best approach is or if that voxel idea is even viable in the first place.

    • @Josh-hl8jl
      @Josh-hl8jl Před 4 měsíci

      @@animestation7225 that's simply not true at all. Reason why raytracing in any form is slow is because you would have to check for ray collision against all meshes in the world. Doesn't matter what information is being is collected, sound or light, raytracing itself is slow.

  • @bitbraindev
    @bitbraindev Před 5 měsíci +119

    This is so dope. A must buy once available to purchase on the asset store! Will this also work for 2D games?

    • @landervanregenmortel
      @landervanregenmortel  Před 5 měsíci +70

      Thanks Miguel! I haven't really considered 2D yet to be honest since game-dev wise it's not an area I'm very familiar with. That said, on the top of my head I can't think of any obvious blockers, it seems like it could potentially be ported to work with 2D. Currently my focus is just on 3D though, so besides looking into it, I can't make any promises on that end.

    • @stickguy9109
      @stickguy9109 Před 5 měsíci +14

      Isn't this a bit useless for 2D?

    • @bitbraindev
      @bitbraindev Před 5 měsíci +23

      @@stickguy9109 realistically yes. You would be surprised though how dynamic acoustics in a 2D game drive immersion.

    • @stickguy9109
      @stickguy9109 Před 5 měsíci +16

      @@bitbraindev Yeah would probably help a bit but you don't need that much accuracy as in 3D games. Simple reverb zones would do the trick I believe

    • @dynstinn
      @dynstinn Před 4 měsíci

      @@landervanregenmortelis it paid or free?

  • @CYON4D
    @CYON4D Před 4 měsíci +20

    EAX. 90s gamers will remember. Great work, reminds me of Thief with EAX effects.

    • @qazojn
      @qazojn Před 4 měsíci +1

      Forgotten technologies of the past. The time when if someone down the corner would say something you will hear it sound coming from the corner and not from through the wall

  • @leeroyjenkns5182
    @leeroyjenkns5182 Před 4 měsíci +12

    Man my relationship with godot is like watching a pie inside an oven you just gotta wait a lil more and it's gonna be so good

    • @cwookdev
      @cwookdev Před 4 měsíci +7

      You could say that you're Waiting for Godot

  • @einfachjd
    @einfachjd Před 4 měsíci +46

    this is so awesome, please tell me you plan to release this to the public in some form. stunning work!

    • @heywidow
      @heywidow Před 4 měsíci

      You could probably achieve this affect by casting raycasts around the player, and for every raycast that is touching an object, increase reverb volume, and if the raycast is shorter, decrease reverb wet value. But idk for sure, the system shown in the video sounds cool.

  • @Shack263
    @Shack263 Před 5 měsíci +45

    This is very cool! Is there a specific research paper or technique that this is based off?

    • @HouseTrapJay
      @HouseTrapJay Před 4 měsíci +6

      Also very interested to know

    • @goob8945
      @goob8945 Před 4 měsíci +1

      also ALSO very interested to know

  • @usualatoms4868
    @usualatoms4868 Před 4 měsíci +9

    That's really good! Great work!
    Will there be any way to modify diffusion, tone, material and such parameters? Or to add some filters and such to modify manually based on the scape the player's in? I'm still a newbie in Godot but a music technologist by trade so I'll be very excited to learn more about the audio side of Godot.

  • @clonkex
    @clonkex Před 4 měsíci +2

    This is awesome. I always forget how critical good audio is to making a space feel real.

  • @satorian7157
    @satorian7157 Před 4 měsíci

    this is just insanely good work, can't wait to see what you come out with next!!

  • @Xeyed_
    @Xeyed_ Před 5 měsíci +2

    that falling sound was amazing , great work!

  • @Theinvalidmusic
    @Theinvalidmusic Před 5 měsíci +1

    This sounds absolutely stunning.

  • @indieology7336
    @indieology7336 Před 5 měsíci +14

    This sounds amazing! Really brings the world to life. Keep up the awesome work!

  • @boensaw5175
    @boensaw5175 Před 5 měsíci +1

    This is extremely cool, it's amazing how much immersion this adds

  • @ThisIsDownstate
    @ThisIsDownstate Před 5 měsíci +2

    this is absolutely amazing, you did it so well. i would one million percent support this when its available. Will be watching closely ! thanks

  • @RXVENVS
    @RXVENVS Před 5 měsíci +7

    Running back with the flashlight to show the reverb on the click was very much needed to showcase thank you so much my ears are grateful

  • @mauppimusic
    @mauppimusic Před 4 měsíci +3

    I've been searching for stuff like this in Godot! Keep this work up! ⭐⭐⭐⭐⭐💯

  • @haewen
    @haewen Před 4 měsíci

    So cool! Really goes to show you how important audio is for immersion.

  • @dotrarXD
    @dotrarXD Před 5 měsíci

    Fantastic work! Watching this project closely

  • @finfamous2546
    @finfamous2546 Před 4 měsíci +2

    Outsideness!! Bravo, truly excellent

  • @dueddel
    @dueddel Před 5 měsíci +1

    Such an awesome demonstration!
    I can't say anything other than a big fat WOW!
    Simply amazing!
    😘👍

  • @mikeschulze7830
    @mikeschulze7830 Před 5 měsíci +1

    Fantastic, I am thrilled. This is definitely a must-have plugin.

  • @deerdev6511
    @deerdev6511 Před 4 měsíci

    This is great! Keep it up, we need you

  • @AmuhAje
    @AmuhAje Před 4 měsíci

    Wow. Just... WOW! Thank you for making this!!!

  • @xylvnking
    @xylvnking Před 3 měsíci

    As an audio engineer and game dev this has been on my to do list for my own project once I get around to audio. I'm using unreal, but can't wait to give this a go because it sounds just as good as I thought it would.

  • @fixieroy
    @fixieroy Před měsícem

    this is incredible work 👏

  • @Nurr0
    @Nurr0 Před 5 měsíci

    This looks/sounds fantastic!

  • @tremisabdoul
    @tremisabdoul Před 4 měsíci

    It's insanly well done big respect !

  • @SafemilkGames
    @SafemilkGames Před 4 měsíci +1

    Excellent. I wanted to build something like this for a shooter I was working on, but I have a lot more research to do about sound in general first... This is so satisfying!

  • @LoneLadyGames
    @LoneLadyGames Před 3 měsíci

    Truly phenomenal!!!

  • @WiseNoodleOfficial
    @WiseNoodleOfficial Před 4 měsíci

    Incredible. Just incredible.

  • @dmnkb
    @dmnkb Před 4 měsíci

    I would never have thought that this would make such a difference!

  • @Ciretako
    @Ciretako Před 4 měsíci

    this is wonderful work yay ♥

  • @Silenoid
    @Silenoid Před 4 měsíci +8

    That's some top tier stuff. I'd love to buy this as an asset and try to use it in a scenario I have in mind. I'm also highly fascinated on the way you achieved it, it would be awesome to watch an explanatory video from you

    • @LoneLadyGames
      @LoneLadyGames Před 3 měsíci

      Totally agreed, keeping my eyes peeled for this 👀

  • @mozismaia
    @mozismaia Před 4 měsíci

    fantastic work!

  • @CyberPotatoDev
    @CyberPotatoDev Před 5 měsíci

    WTF Dude. This is crazy. Congratulations. Wonderful work.

  • @AntonioRColon
    @AntonioRColon Před 4 měsíci

    This is incredibly awesome, captivating, and immersive! I can't wait to see what you'll do with it!

  • @Saztog1425
    @Saztog1425 Před 4 měsíci +2

    The Vincent Price record is a hilarious but awesome touch. Great work, man!

  • @rubiciq_devitron
    @rubiciq_devitron Před 4 měsíci +1

    I really need that grid texture.
    It looks amazing

  • @Yurgen_S
    @Yurgen_S Před 4 měsíci +1

    I'D PAY to implement it, sounds amazing. Great work, holy!

  • @psychotrout
    @psychotrout Před 4 měsíci

    Wow this is incredible!

  • @Ergg08
    @Ergg08 Před 4 měsíci

    This is sooo amazing !

  • @KimStennabbCaesar
    @KimStennabbCaesar Před 4 měsíci

    Absolutely incredible.

  • @ZsoltVajda
    @ZsoltVajda Před 4 měsíci

    this sounds amazing!

  • @user-xe6sm4jv8f
    @user-xe6sm4jv8f Před 4 měsíci +1

    This is the best kind of ASMR

  • @thygrrr
    @thygrrr Před 4 měsíci +1

    Quite impressive!

  • @AudioRuslan
    @AudioRuslan Před 4 měsíci

    Wow! Really dope

  • @lukky.
    @lukky. Před 5 měsíci

    so cool! awesome stuff :)

  • @dmaz123
    @dmaz123 Před 5 měsíci

    that was freaking awesome!!!

  • @Dominik-K
    @Dominik-K Před 5 měsíci

    Really cool system, I'm interested in this too

  • @lhadnusj
    @lhadnusj Před 4 měsíci

    This is sick

  • @bocarlsson3rd
    @bocarlsson3rd Před 4 měsíci

    Soooo cooooool!

  • @pickypixelgames
    @pickypixelgames Před 4 měsíci

    Just awesome!

  • @Seth_Walker
    @Seth_Walker Před 4 měsíci

    This is amazing.

  • @BloodPact
    @BloodPact Před 4 měsíci

    Amazing!

  • @nidus7
    @nidus7 Před 4 měsíci

    That's impressive!!! keep it up

  • @Sovietfoxx
    @Sovietfoxx Před 4 měsíci

    Broo is AMAZING!

  • @remsalt3882
    @remsalt3882 Před 4 měsíci

    jesus, does need some tweaking with relativity to the walls in between, but this sounds (and looks) incredible! great job man and keep pushing for further development!

  • @johanavril1691
    @johanavril1691 Před 5 měsíci

    ha yes the outsideness value, very important information right there lol
    great work btw sounds amazing

  • @Akaikami
    @Akaikami Před 4 měsíci +7

    This is awesome, Godot needs a really good system like this for audio as well as VOIP. It's what makes games like Tarkov so immersive.

    • @unconscious5630
      @unconscious5630 Před 4 měsíci +5

      Tarkov does not have immersive audio lmao

    • @Kazwell96
      @Kazwell96 Před 4 měsíci

      Lethal company is a good example of VoIP with dynamic acoustics

    • @ynnda6155
      @ynnda6155 Před 4 měsíci

      BRUUUUH If only had Tarkov audio like that.

    • @bojkashapirax6283
      @bojkashapirax6283 Před 4 měsíci

      I've gotten VoIP to kinda work in the past, though it's really rough around the edges.

  • @luxodev
    @luxodev Před 4 měsíci

    Speechless

  • @onlylikenerd
    @onlylikenerd Před 5 měsíci +5

    This is absolutely killer. How did you achieve this? Is it essentially a simulation of spatial audio or something like that? I know nothing about audio but this makes me want to study it!

  • @Povilaz
    @Povilaz Před 4 měsíci

    Very interesting!

  • @UnderdogDen
    @UnderdogDen Před 4 měsíci

    This is crazy good.

  • @zellator
    @zellator Před 4 měsíci

    Wow, just wow!

  • @gumballegal
    @gumballegal Před 4 měsíci

    sounds awesome

  • @Lordiun
    @Lordiun Před 5 měsíci +5

    Very cool

  • @gijsbert11
    @gijsbert11 Před 5 měsíci

    This is just... wow

  • @GDScriptDude
    @GDScriptDude Před 4 měsíci

    Very nice!

  • @CilantroSativum
    @CilantroSativum Před 4 měsíci

    I don't know weather it was intentional or not but this gives me ASMR

  • @In3F
    @In3F Před 5 měsíci

    Amazing.

  • @Illucien_
    @Illucien_ Před 4 měsíci

    awesome!

  • @misterk7_-
    @misterk7_- Před 4 měsíci

    very cool, I love this tech. I used it in Minecraft with a VR mod and it was insane.

  • @DanaTheLateBloomingFruitLoop

    I am speechless.

  • @IceCreamPie9000
    @IceCreamPie9000 Před 5 měsíci

    This is Soooooo good

  • @Allah-is-God
    @Allah-is-God Před 5 měsíci

    this is sick

  • @colbyboucher6391
    @colbyboucher6391 Před 4 měsíci

    Wild.

  • @Settiis
    @Settiis Před 4 měsíci

    Spectacular! I wish every game had audio design done as well as in this demo. Take notes triple A studios…

  • @bhante1345
    @bhante1345 Před 4 měsíci +1

    You're going to revolutionize FPS games with this.

  • @CharlesVanNoland
    @CharlesVanNoland Před 4 měsíci

    Yuss!!! I remember playing Half-Life with an Aureal A3D soundcard and being able to enable it and have such awesome audio like this - then Creative bought them out and ditched the tech, never to bring it to market again. I've been waiting for someone to replicate what they did 25 years ago so we can have rad immersive audio again. Mad props!

  • @whitecrow20XX
    @whitecrow20XX Před 5 měsíci

    Lovin it

  • @bachhoang9004
    @bachhoang9004 Před 4 měsíci

    holy shit this is so good

  • @centdemeern1
    @centdemeern1 Před 4 měsíci

    Impressive!

  • @son12509
    @son12509 Před 4 měsíci

    This rocks.

  • @mumblety
    @mumblety Před 4 měsíci

    Dang. THIS IS COOL!!!

  • @sloppyglizzy8313
    @sloppyglizzy8313 Před 4 měsíci

    Can we please get a video on how you did some of this stuff? The audio is incredibly impressive. Your movement looks great. The lights are insane too.

  • @zsupermicrowave_6553
    @zsupermicrowave_6553 Před 4 měsíci +2

    Wow this sounds so good!!! Will you make a video explaining how this works? It would be so interesting!

    • @landervanregenmortel
      @landervanregenmortel  Před 4 měsíci

      Thank you! I would like to do that when it's more developed and more set in stone :)

  • @100Jim
    @100Jim Před 4 měsíci

    Awesome

  • @BeauSeymour
    @BeauSeymour Před 5 měsíci +3

    Amazing work!

  • @ThatDudeNamedMichael
    @ThatDudeNamedMichael Před 4 měsíci

    this is so fucking sick

  • @Grimmers
    @Grimmers Před 4 měsíci +4

    The muffling around corners seems just a tad exaggerated, but yeah, very exceptional work. Games have been missing this.

  • @Wurfeln
    @Wurfeln Před 4 měsíci

    Godot Battlefield here we come

  • @CosSer
    @CosSer Před 4 měsíci

    off the chain ! Do you do something also in Unity? it's very interesting

  • @RugbugRedfern
    @RugbugRedfern Před 5 měsíci

    Wow that big room sounds so realistic

    • @JacobTeach
      @JacobTeach Před 5 měsíci

      WHY DO I SEE YOU EVERYWHERE

  • @0xkeez
    @0xkeez Před 4 měsíci

    You are incredible! I'm audio engineer for music and I've been dabbling in Godot. This was so so good to my ears, and that jump at the end was sold so well with the sound. I honestly can't believe it. Is there any way we can support your work so it 100% makes it to us to use in our own projects? I'd also love to help playtest it and give audio-focused based feedback if that helps at all.
    My one comment on what could be improved (if possible) is room reflections bleeding into each other, 00:46 was when I noticed it, the sound got very muffled and I feel a bit more direct reflections would hit the ear from the wall to the right and behind them. My diagnosis could be totally wrong but that's what I noticed. Regardless, that is a tiny blip in what feels like a masterpiece of achievement.

    • @landervanregenmortel
      @landervanregenmortel  Před 4 měsíci

      Thanks for wanting to support, the best way to help me currently would be to share my work!
      If you're interested in testing this down the line, please feel free to drop me an email through my website, it would be great if you could outline any projects you would try to implement this in. :)

  • @png103
    @png103 Před 5 měsíci +1

    this looks amazing, how do you calculate outsideness?

  • @WouterB21
    @WouterB21 Před 5 měsíci +5

    This is quite cool! Will this become available sometime?
    Also a question: does this have the ability to take room material into account? i.e. we all know when you move into a new house, the living room is always quite echo-y. However, when we add more furniture such as a sofa, chairs, curtains and stuff, thats going to absorb the sound, reducing or even negating the echoes. Would it be possible to implement something like this? Could be either you, or a user of this system (if you intend to release this).
    Whether fully automatic, or if your objects need a certain material/property, i dont care. Would be cool and add a lot to immersion

    • @landervanregenmortel
      @landervanregenmortel  Před 5 měsíci +17

      Thank you! No ETA yet, there's still quite a lot of work and testing left in order for this to be production ready. This is still in a pretty rough/primitive stage.
      Currently I haven't implemented surface materials yet, but this is on my to-do list. I'm not entirely sure yet how exactly I'll implement those yet, but I'm trying to make things as easy to use/accesible as I can.
      That said, I want to clarify that my system is not aiming to be a physically accurate acoustic solution, even though material interaction will probably be implemented and it should deliver the expected behavior (A same sized room with carpet will sound less reverberant than a same sized room with tiles), the way that is computed will not be physically accurate. Adding furniture into a space has a significant influence over the acoustics of a room in real life, but my system might not be accurate enough to properly represent or detect that change reliably. Graphics have historically relied on smoke and mirrors to achieve convincing results (e.g. screen-space reflections), I'm following a similar mindset with acoustics currently. I'm hoping to achieve something that is easy for indies/small teams to implement, that still offers convincing and immersive results.
      There will still be audio volumes that you can place in case my solution doesn't achieve the desired acoustics in a certain space, those volumes will allow you to make adjustments for a particular space, and can encapsulate multiple spaces while still keeping relative differences in acoustics (e.g. for a furnished house you could add an adjustment volume that reduces the reverb length, but still keep the difference in acoustics between rooms). In this video I already use an initial implementation of those for the pit and underground room at the end, since I wasn't achieving the desired long-tailed reverb that I wanted there.

  • @ThatsMySkill
    @ThatsMySkill Před 4 měsíci +1

    i remember something similar wich the creator of the sonic ethers shaders made a while back. it wasnt as crazy as this one is but still. he coded it so that if you are in a big cave it would add a lot of reverb and if you are in a tight spot that reverb was completely gone wich made it feel very claustrophobic and added a lot of atmosphere.i wish big studios invested more into actual dynamic audio like this instead of faking these effects. i bet this could be greatly used in horror games too. great job man!

    • @Go_Coup
      @Go_Coup Před 4 měsíci

      AAA studios typically have horrible sound. Reverb, localization, occlusion, velocity... Shoot, they can't even get wind right.

    • @ThatsMySkill
      @ThatsMySkill Před 4 měsíci

      @@Go_Coup exactly and thats why it doesnt sound outlandish to suggest valve would innovate on that field