1. Thread posting restricted: Only the BeamNG team members can post new threads in this sub-forum in order to prevent spam. Posting is available on unlocked threads.

Scrape Audio System - Behind the Scenes

Discussion in 'Microblogs' started by sebaudio, May 29, 2019.

  1. sebaudio

    sebaudio
    Expand Collapse
    BeamNG Team

    Joined:
    Sep 27, 2018
    Messages:
    30


    This video shows a look behind the curtain of the scrape audio system for BeamNG.drive - from recording, over editing, to implementation and game context.

    For the recording process, I gathered some old car parts from a garage near our office and several surface types from a hardware shop. By scraping each vehicle part against each surface, I could capture a large amount of different scrape types. Essentially, those were:

    - Metal vs. Asphalt, Gravel, Dirt, Sand
    - Plastic vs. Asphalt, Gravel, Dirt, Sand

    The sound character was also dependent on the actual vehicle part that was scraped against the surface: Although both made out of metal, a muffler scraped against asphalt sounded very different from a wheel rim scraped against asphalt.

    For the recordings, I used two cardioid condenser microhpones (Sennheiser MKH 8040), each at a different distance, and a contact microhpone (Barcus Berry 4000 Planar System), which captures physical vibrations, rather than sonic waves. The final assets were mostly a mix of one of the condenser microphones and the contact microphone, rendered as a single mono loop.

    To make sure I had enough material to create a smooth sounding loop, I recorded several minutes of each object-surface combination. The loops were then cleaned up from unwanted noise and I applied some subtle EQ, limiting and compression. I ended up with a huge scrape sound library, with 252 assets that I could try out. Of course, what ultimately ended up in-game is just a fraction of that, but as is often the case with audio design, it was a lot about experimentation and trying out different approaches.

    The sound for vegetation collision was actually a side-product of the scrape system. At some point, one of our programmers pointed out to me, that the scrapes are also triggered by collision with bushes and trees. Initially, it was just the "default" metal/plastic vs. asphalt scrapes, which didn´t even sound too bad. But we thought we could do better and designed a more appropriate vegetation scrape sound: A combination of the base metal/plastic scrapes with some EQ and additional "sweeteners" that were created from rustling bush, tree and wood recordings.

    Also the implementation part was very much a process of trial and error. Equally important to the scrape audio assets and FMOD setup (our audio middleware) was of course the underlying physics and code driving the sounds. The dials I turn in the implementation part of the video are so called "RTPCs" or "Real-Time-Parameter-Controls": Audio parameters that change the sound based on game input. For the scrape system, those are the physics parameters that are sent to FMOD:

    "Volume" = velocity * energy: controls volume
    "Pitch" = velocity: controls pitch and EQ settings
    "Color" = load: controls volume, pitch and EQ settings
    "Texture" = looseness (surface type): triggers additional "sweeteners" on top of the base scrape sound.

    So if you play BeamNG.drive, you will notice that the sound character of the scrapes will change depending on what you do: The size and material of the scraping object, surface type, scrape force, speed, distance and environment (e.g. in a tunnel or open field) are all modulating the scrape sound in real-time.

    As with all audio features - the scrape system is still work-in-progess, so please do not consider the current state to be final. As we move on with development, we will further improve the scrape sounds, fix issues if we find them and possibly extend the scrape audio sysetem to support new features like scrapes against mud, water or metal.

    Until then - happy scraping!
     
    • Like Like x 62
    • Informative Informative x 12
    • Agree Agree x 2
  2. CN877

    CN877
    Expand Collapse

    Joined:
    Jun 27, 2017
    Messages:
    1,465
    Awesome! Thanks for sharing :D

    It was really interesting to learn how it was all made possible :)
     
    • Agree Agree x 7
    • Like Like x 1
  3. Sonic7535

    Sonic7535
    Expand Collapse

    Joined:
    Feb 23, 2016
    Messages:
    1
    This is the only game that gives the team a soul and the most realistic game :):):)
     
    • Agree Agree x 5
  4. Sithhy™

    Sithhy™
    Expand Collapse

    Joined:
    Apr 5, 2017
    Messages:
    3,343
    Man, do I love the work that ALL the devs at BeamNG put in into this game... It's unreal, in some ways o_O
     
    • Agree Agree x 8
  5. Chara Dreemurr

    Chara Dreemurr
    Expand Collapse

    Joined:
    Mar 15, 2016
    Messages:
    1
    This is really interesting from an audio engineering standpoint! Can the next ublog be about the engine and exhaust sound synthesis? Like how different engine types produce different sounds.
     
    • Agree Agree x 2
  6. ByteGuy

    ByteGuy
    Expand Collapse

    Joined:
    May 2, 2016
    Messages:
    418
    this was actually super cool and interesting, loved the video. It really shows how much effort and attention to detail you guys put into the sounds of this game. Well done :)
     
    • Agree Agree x 6
  7. Projekt535

    Projekt535
    Expand Collapse

    Joined:
    Aug 5, 2013
    Messages:
    189
    This was an awesome insight into the development of this fantastic game! Thank you for sharing, and I hope to see more behind the scenes in the future, it's some fascinating stuff! :)
     
    • Agree Agree x 4
    • Like Like x 1
  8. Ai'Torror

    Ai'Torror
    Expand Collapse
    BeamNG Team

    Joined:
    Aug 29, 2015
    Messages:
    1,547
    As we're on the topic of audio samples...
    Have you ever thought about recording a sound of a single diesel injector firing, so you could then use it as an overlay for an existing gasoline sounds with correction on the amount of cylinders?
     
    • Agree Agree x 7
  9. Jsap20

    Jsap20
    Expand Collapse

    Joined:
    Jun 26, 2016
    Messages:
    630
    That has to be one of the most fun jobs on the team
     
    • Like Like x 1
    • Agree Agree x 1
  10. Dr. Death

    Dr. Death
    Expand Collapse

    Joined:
    May 12, 2016
    Messages:
    1,962
    "Color" should ideally change with car weight right? And pitch and volume with speed of the scrape?
     
  11. sebaudio

    sebaudio
    Expand Collapse
    BeamNG Team

    Joined:
    Sep 27, 2018
    Messages:
    30
    A making-of of the engine and exhaust sound synthesis is a nice idea, though it would probably be less boring that in sounds like. We do not record our own vehicle samples (yet) and the implementation is rather technical and less creative compared to the scrapes. But as the scrape making-of was perceived pretty well, we will consider making more of these in the future about other topics.
     
    • Like Like x 5
  12. sebaudio

    sebaudio
    Expand Collapse
    BeamNG Team

    Joined:
    Sep 27, 2018
    Messages:
    30
    That sounds like a nice idea in theory, but I´m not sure if that would work in practice. It would be an interesting experiment though. Until now, we have not done any engine sound recordings ourselves, but rely on a third party to provide us with engine samples. We might consider recording our own engine sounds in the future.
     
    • Like Like x 4
  13. sebaudio

    sebaudio
    Expand Collapse
    BeamNG Team

    Joined:
    Sep 27, 2018
    Messages:
    30
    Yes, that´s how it is supposed to work. In the first gameplay clip of above video, you can see me scraping the whole van across asphalt, and then just single parts of that vehicle. Responsible for the difference in sound character is mostly the "color" RTPC. So the bigger parts have more weight and thus increase the volume of one of the scrape layers that contains a lot of low frequencies, giving the overall scrape more "body". Also, with increasing speed, the scrape sound becomes louder, increases slightly in pitch, and gets filtered with an EQ dynamically (pronouncing the high frequencies). None of that happens in a linear fashion, but with the help of custom created automation curves that map each physics input value to an output value causing a change in sound. These are the automation curves for the "pitch" RTPC:
     

    Attached Files:

    • automationcurve.png
    • Like Like x 4
    • Informative Informative x 1
  14. Dr. Death

    Dr. Death
    Expand Collapse

    Joined:
    May 12, 2016
    Messages:
    1,962
    Would it be too much to suggest that also the amount of surface that gets scraped gets simulated? or would that be too much simulation for the game?
     
  15. 25ccSupercharged

    25ccSupercharged
    Expand Collapse

    Joined:
    Apr 22, 2019
    Messages:
    11
    That's coming along neatly :) Just so I've expressed these somewhere --

    Perhaps a "stoney" (gravel pebbles) option for scrapes, for that "larger-grain" type of gravel?

    I'm sure that's coming up but just so it's here; water impact and "disturbance" (something going through it) sounds. I'm not sure if those would really differ discernibly with different materials? Also, under-water muffling maybe, as rare as that would be to experience probably but I imagine it would be just a test if the camera is under water and in such case apply a mostly-low-pass-as-appropriate-to-water filter. Maybe also different intensities of rain on vehicle surfaces (or perhaps just a good-sounding generic one, especially for inside the car, for that sweet-sweet immersion :)), perhaps also for a variety of potential map-surfaces (ground-covers like grass and concrete possibly differing noticeably although overall it may be too minor a difference to bother).

    The bush and branch sounds; for any more than light-weight shrubbery I would imagine the effect to be more "impact-y" or "whip-y" maybe (perhaps with some branch-breaking sounds as well, even though the shrubs are visually unaffected in those impacts for now) rather than just a rustle when hit at speed, maybe also having a "texture" according to the properties of the surface hitting them (due to the way sound propagates in solids (the chassis) I would expect those heavier hits (or having these heavy-enough plants scrape the outside of the vehicle) to be fairly well audible inside a vehicle in a "low-pass" way, just like say gravel stones hitting the bottom or the wheel-arches in the occasion of wheelspin being rather audible in my experience (which would be another hopeful feature :) .. but rather challenging given it would need to work with whichever vehicle shape (test certain possibly-especially-tailored-for-this particle-effect particles for collisions at a rare rate maybe, if that's sensible at all)))?

    @ Dynamic engine sounds from single firings (I understand the suggestion was about overlaying a diesel firing on top of existing gasoline loops but it gets kind of close to this thought); I've seen some related experiments on youtube and real life single firing samples + a correct firing order model + clever "post-processing" is something I've wondered if it could be made to work sufficiently plausibly (realistically) and quick-performingly. I imagine it would take more effort than it would be worth but I've wondered. The following have rather artificial and simple-sounding "firing sounds" but the engine types are well recognizable regardless, from purely the firing order --

    #1: Pick your engine :) -- https://www.youtube.com/channel/UC5W4P8cYkNV6pFqZVkjuXLg/videos
    #2: It sounds crude but considering this is entirely procedurally generated (no samples), I find it rather interesting still:
     
    • Like Like x 3
  16. FFIVGUY

    FFIVGUY
    Expand Collapse

    Joined:
    Feb 21, 2018
    Messages:
    558
    So, when will you guys start recording your own vehicle samples? Will every element e.i head and valves, intake, vvt, vvl, air fuel ratio, crancompression, different exhaust, muffler, and catalytic converter types, pitch changing with engine displacement, different exhaust pipe, header and manifold size sounds, different firing orders, other engine layouts besides v and inline, different engine block angles, different types of v blocks like hemi, flathead, damaged part sounds, cam profile, etc be included? WIll we have more engine cylinder options to choose from? And will there ever be a bigger engine than a V16?
     
    #16 FFIVGUY, Jul 12, 2019
    Last edited: Jan 3, 2020
  17. Dr. Death

    Dr. Death
    Expand Collapse

    Joined:
    May 12, 2016
    Messages:
    1,962
    I think you are asking for too much
     
    • Agree Agree x 13
  18. -WhistlerXPWhistler7

    -WhistlerXPWhistler7
    Expand Collapse

    Joined:
    Oct 27, 2017
    Messages:
    551
    How about things like the taxi signs and lightbars..

    would they have an separate scrape sound?
     
    • Like Like x 1
  19. zaruchen11

    zaruchen11
    Expand Collapse

    Joined:
    Aug 8, 2015
    Messages:
    90
    If anything, the idea of having a variety of exhaust notes is interesting.
     
    • Agree Agree x 2
  20. FFIVGUY

    FFIVGUY
    Expand Collapse

    Joined:
    Feb 21, 2018
    Messages:
    558
    When you guys start recording your own engine samples will there be any new sounds as well?
    (puling back on my original question)
     
    • Informative Informative x 1
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice