Hours 25 – 26: Car Audio Implementation

Hello! Back again, with a very cool one this time. This technically isn’t a recording post (so I only sacrificed an hour) but I uses recordings I made a little while ago, which i’ve implemented into UE4.

I posted about my car recording a few weeks ago, something that actually happened a few months previous. Tonight, however, I decided I’d look at the recordings in more detail, and see what I could do with them in Unreal. I had initially intended, back when we recorded the car, to cut up the recordings and arrange them together on a linear timeline, along with some first person game driving footage. After having a go, I decided this was beyond impossible – as the tuning of the car engine is something that I think we are very used to, and it sticks out a mile when it sounds wrong. I struggled to construct gear shifts and pitch rises on a linear timeline that made sense to the ear.

However, I pulled up one of the car game templates in UE4 this evening, and it turned out their audio implementation wasn’t as tricky as i’d expected, and I found their engine was just made up of three recordings, that were blended together as an RPM parameter rose. I hopped over to my car recordings, pulled out three sections in vary degrees of engine intensity and, looped them (to the best of my limited looping ability) and put them in.


Ignore the mixers, I was experimenting with a surface layer but decided to leave it out as it muddied up the sound a lot.

Some wizardry in blueprint controls the movement between the 3 parameters on the crossfade by parameter node, I just jumped on the cue architecture and used my own sounds. I’ll teach myself to set this up properly the next time I attempt to implement a car, I think.

I drove my sounds around a little and I found that it did sound cool, but there were a few issues I could hear. I decided to set up a few bits in the blueprint to make the sound a little better. It’s worth noting here that my blueprint skills are very minimal, and the way i’ve done this probably isn’t the best way. I’ll explain how I think I could improve it as I go along.

start engine

So I set an ‘Up’ arrow key command, this denotes acceleration. I created a separate idle engine sound cue, independent to the main engine sound cue, and i’ll explain why below.

This is a little setup to show what happens when you begin driving: the idle sound fades out, to start with. I wanted to blend it a little with the main engine sound, so there’s a relatively long fade time (0.4). I then cut a small engine ‘start-up’ sound from the recordings, it’s essentially just a little sound that I felt denoted the engine spurring into life. Before that was there, the engine essentially just faded in, and it felt wrong to listen to. After that small engine begin recording, I then fade the main engine cue in. All of these audio components refer to my sound cues. The engine then accelerates through the different looped recordings, until the ‘Up’ key is released, or the ‘Down’ key is pressed:

end engine.png

I decided, for fun mainly, that i’d set up a tire screech to play every-time you break. We recorded some awesome tire screeches, so it seemed a waste not to use them. It doesn’t work especially well when you break at slow speeds, maybe a similar parameter based system to the engine sound, that works with the RPM/speed, would be good – to choose a more appropriate stop sound depending on the speed. So upon pressing the down arrow, you trigger the screech sound – just as a 2D sound. I only put one variation in, but again, next time i’d add more variations to get it sounding more natural.
After that I fade out the main engine sound, and again this felt a little un-natural. I looked through the recordings, and pulled out this very subtle sound, which I think is the engine fan slowing down – I fade this ‘engine end’ in as the main engine fades out.
I then bring the idle sound in, the same one that is cancelled out in the first cue when you press the ‘Up’ arrow. This idle cue then loops indefinitely while the car isn’t moving.

I hope this explains a little of what I did to achieve the implementation. There are a number of issues with it that I can see – the loops aren’t great, for starters, as we recorded the engine rising and falling, thus I had to make the loops quite short to encapsulate the sound I wanted, and as a result the looping points are pretty obvious. I don’t think they are terrible, but they’re not 100% perfect yet.
There’s no sound to indicate any kind of gear shift – the car setup in this example doesn’t have any gear system anyway, so that’s mainly why I haven’t bothered with that.
The revs aren’t perfect either – I feel like it starts too high, and doesn’t reach a high enough acceleration sound to feel natural.
The sound itself isn’t incredible – mainly due to the original recordings. I think the next time we attempt the car recording, we’ll concentrate on the mic setup a little more (particularly the exhaust). As I’ve already mentioned, the tire screech is just one recording, next time i’ll implement a few variations to keep it sounding real.

But all in all, i’m pleased with how it has turned out. You can listen to it in all its glory below:

I welcome all suggestions on how to make it better!

As always, thanks for reading.




Hours 25 – 26: Car Audio Implementation

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s