Soundscapes: The sound nobody remembers
Remember EAX? I wouldn’t be surprised if you haven’t heard of it at all or only have a vague idea of what it was. There was a time when PC gamers upgraded their sound cards much in the same way as with graphics cards, resulting in a similar level of improvement in presentation aurally as graphics cards do visually. During 1998-2008 hundreds of PC games adopted EAX and hardly any videos exist of games with it enabled. The lack of recorded content provoked me to revisit all these old titles and see if EAX was as significant as I had always believed it to be. What I discovered was that the quality of the sound in these older titles varies a lot more than I expected. Some sound quite bad by today’s standards while others can stand toe to toe with the very best games released last year. To easiest experience the difference EAX makes for these titles I prepared a short video montage of before-after clips. The difference is not subtle as even the worst speakers or headphones should amply demonstrate the dramatic change in sound EAX makes. Having acoustic effects in games is important even if you might not pay any attention to them. If the sound doesn’t match what you’re seeing you will subconsciously sense that something is wrong, or you just won’t connect with what you’re seeing. That’s why most games go to great lengths to have different acoustic environments to create the correct sense of space even if the effect is often subtle. This wasn’t the case before the first EAX sound card came out, however. Back in 1998 Creative Labs and Aureal Semiconductor were about to change the sound card market. For the first time developers could use hardware accelerated DSP effects for sound which allowed significantly higher quality acoustic effects than had ever been heard before in games. Aureal were sued by Creative labs and the lawsuit caused Aureal to go bankrupt. The fact that Aureal shut down because of the Creative Labs lawsuit caused many users to hold a grudge against Creative, and would be one of many PR problems Creative would deal with over the years. Incompatible motherboards and drivers that caused blue screens were among the problems users could run into if they wanted to enjoy the full audio experience that PC games could offer. The problems even persist to this day as I personally ran into blue screens caused by the sound card while trying to capture footage from Quake 4. Given CPU limitations and the lack of middleware alternatives meant using EAX to enhance the audio experience made a lot of sense. With a minimal performance drop you got all sorts of enhancements and as sound cards improved old titles sounded better with no extra effort on the part of developers. For example when games like Jedi Knight and Thief 1 came out there were no 7.1 sound cards or even 5.1 for that matter. Thanks to hardware acceleration the work of making sure a sound was sent to the correct speaker was handled by the sound card. By not having the game handle this work meant that older titles could scale up to 7.1, 10.1 or any arbitrary number of speakers if someone would make such a card. Up until around 2004 it was standard for games to only provide stereo sound in software mode and surround support relied entirely on hardware acceleration. This situation changed when Doom 3 and Half-Life 2 came out which were arguably the most anticipated game releases of all time apart from Duke Nukem Forever. Neither of these games used hardware acceleration and tried to elevate software sound to a new level in their own ways. Half-Life 2 was the most successful at this and had sound post processing effects that were about on par with the earliest versions of EAX. While it was still not as good as what EAX could do at the time it was still a big step forward as a developer using the Source Engine knew that all players would get the same experience and didn’t have to worry about how the game would sound with or without hardware acceleration. The move away from EAX to software solutions would take a few more years to happen however for most titles. A high profile EAX title that came out the same year as Half-Life 2 was Thief 3: Deadly Shadows. Thief is a series that relied on sound more than almost any other games as they discouraged combat. Fighting against the weakest enemies would end in death or severe injury, so hearing where the AI was and what it was thinking was of utmost importance. All the games in the series used EAX to great effect as it brought the old castles, streets and caves to life with appropriate echoes, and due to the slow pace of the games you had plenty of time to sit and listen to the effects. The more subtle advantages of EAX over what the software sound of Half-Life 2 provided such as transitions between different echoes, multiple kinds of echoes at the same time were easy to appreciate in a slower game like Thief 3. My next clip is from the first mission and I picked a great hall with an obvious echo effect to showcase what EAX did for it. In a game where the amount of noise you’re making is integral to the game mechanics having effects like the ones in the clip become more important than just immersion. Hearing how much the noise is amplified by the walls makes big room feel dangerous as you become afraid of how much sound you make. The sound card monopoly by Creative was broken when Asus entered the market in 2008 with their Xonar line of cards. The ill will built up over many years and the promised EAX emulation offered by Asus made many users switch. It didn’t matter that the EAX emulation turned out to be largely non-functional or buggy as Asus quickly got a reputation for giving a higher audio fidelity thanks to quality components. Asus timing couldn’t have been better as developers were moving away completely from hardware acceleration to software solutions for the same effects. Today, EAX is dead. With the increased emphasis on consoles and the dwindling sales of Creative Labs cards it just didn’t make sense to use EAX over software sound anymore. In 2008 the last major EAX titles were released and after that all support from developers died. The current multicore CPUs makes it easy to add all sorts of cool effects to the sound in high quality without any major performance drop. This is good news for audio enthusiasts as software solutions really can sound better than anything before. It took a while, but I feel that software sound caught up with EAX in 2007 with the release of Crysis. It had all the subtle acoustic effects I demand from an immersive game when moving from beach to woods to mountain areas. It also had full support for up to 7.1. Most people might not see the point of that, but the PC is all about being able to configure the gaming experience to any level you want whether it be 7.1 sound or 5+ monitors for extreme widescreen experiences. Console games usually only have support for stereo and 5.1 and that is true for most games today, but there are still some games that support any configuration Windows does and that’s the way it should be. An example of how good sound can be today using software solutions is Metro 2033 which on PC uses “wave tracing” which is the sound equivalent to ray tracing. In the video the player objective is to stop the endless stream of monsters into the metro station by caving in the tunnels they use. The few remaining settlers fight off the endless stream and as you move away from them in order to locate the tunnels the sound of gun fire keeps changing based on your distance from them just as you’d expect. The way the sound changes is done in real time and is not a pre-baked ambient sample. Thanks to the advanced audio tech being used it adds tremendously to the immersion of the game as the effect it present in every map of the game. EAX played an important role for ten years, but now that it’s gone I don’t think anyone will miss it. Being forced to buy extra sound cards from a specific manufacturer in order to make sure the audio experience isn’t compromised isn’t something anyone would want. Let’s not forget it though because when the day comes that you want to experience these older titles knowledge of EAX and having hardware that supports it becomes critical. |
Pingback: The Sunday Papers | Rock, Paper, Shotgun
Excellent article, Peter. The sound in the Thief series is some of the best I’ve ever experienced in a game. Crisis is excellent, too. Do you know if there is a way to emulate EAX with a software wrapper to play these old games on current systemsSuch as Windows 7 running on a Boot Camp partition on an iMac?
Another game with excellent sound was the original IL-2 Sturmovik.
I don’t know of any software emulator for EAX. Some integrated sound cards and Asus cards claim to have EAX emulation, but they have never worked like they should for me. Either the acoustic effects sound completely different from what they should and/or there would be all sorts of glitches in the sound. In the case of Asus most EAX games just plain refuse to work and say there is no EAX compatible hardware available.
I have no idea how much work it would require to create a software emulator for EAX, but I think it needs to happen. Otherwise nobody in the future will be able to hear old games the way they’re supposed to sound.
Simon, Peter:
While Asus’s software emulation never worked properly because they were no doubt reverse-engineering it, Creative HAS released its emulation software for sale.
It’s called the Sound Blaster X-Fi MB 2 – http://us.store.creative.com/Sound-Blaster-XFi-MB2/M/B006GK73K8.htm – Yes, it’s $25, but there might be ways for you get a demo. It’s just a retail release of the software package Creative released for certain OEM mobo manufacturers that allowed X-Fi effects on Realtek mobo chips (running on software, naturally, not hardware).
Note that I’ve not actually used this – always been a hardware man, never had a need for it – but if it does what it says on its tin, then it should answer your prayers.
It’s only available on the US site, far as I can tell, which is odd. I don’t know if you’d need a VPN or something to buy it, but probably not.
If not, something like the X-FI Go! dongle – http://us.store.creative.com/Creative-Sound-Blaster-XFi-Go-Pro/M/B0044DEDC0.htm – might be suitable, though chances are it’s still software.
Peter, Lith,
Thanks again for the great article and comments!
I will certainly try out the X-Fi Go – never knew such a thing existed.
Cheers.
Remember, if you’re running Vista/7 on your Mac, you’ll still need to the older games through ALchemy for the Thief series.
Thanks, Lith.
I managed to find the ALchemy download through here rather through Creative’s abominable website.
Here’s the link to the download page (click the red Download link on the page).
I’ll report back if I can get it to work on the iMac running Windows 7 and Thief or Thief 2.
See also this comment for instructions on manually instructing a game to run with ALchemy.
Remember, you’ll need compatible hardware for ALchemy to work. It’s an OpenAL wrapping system for DSound – translating the old DSound/EAX calls (no longer supported in Vista/7) to OpenAL.
You either a) put in the game’s registry location (hard to pin down) or b) simply point ALchemy to the location of the folder with the game’s .exe in it. It’ll generate an .ini file with the Buffer, Duration and Voice count settings in it, and a .dll file that masquerades as normal dsound.dll file, but links to OpenAL instead of Dsound.
It’s really quite amazing to play these old games and realise how much better the sound was compared to a lot of today’s games. Environment effects, high voice counts, etc. About the only thing that’s improved with modern games is the sample and bit rates of the sound files, but that’s not really a result of any real work in gaming sound technology; rather, it’s just because we now have the storage available for larger sound files.
@Lith: Understood. I’m looking at the Creative Sound Blaster X-Fi Go! Pro USB Sound Card dongle, which is available in Amazon Europe (trying to find other places to get it from as I try to avoid Amazon when possible).
And Here’s a list of Alchemy settings for specific games.
Good article. Now if only the same thing would happen with graphics!
Guess I’m old-fashioned, but I never could stand all that echo and reverb, back in the day.
Ok. It’s great to know there’s at least TWO people on the planet who care about game sound: myself, and Peter here :).
It’s quite sad that sound is never given the same amount of attention as graphics; I inevitably get flamed when I point out sound has more or less stagnated in the last ten years (most of the development has gone into doing hardware-style sound in software, and that still isn’t at the say level as hardware sound). We do have higher sample rates and bit rates, yes, but that’s merely commensurate with the increase in storage space, not necessarily processing power.
Sound is still regard as an afterthought: a game’s graphics, AI, levels and everything else will be worked on for the entirety of the project; sound will done in the final month before going gold, and often by only one guy (who may be floating between projects…or the intern).
Take Crysis, the epitome of the no-holds-barred, balls-out ultra-sparkly-graphics PC game that pushed the limits of PC gaming hardware. It’s sound engine? FMOD, an off-the-shelf solution from Firelight Studios, down in Melbourne. Crysis spent thousands of man-hours on the graphics, the AI, the levels…they then ordered out for the sound.
In regards to that, it’s not entirely clear that Aureal wouldn’t have died out on its own, with or without Creative’s intervention. I’m not saying what Creative did was good, far from it, but that Aureal was a very different development process. The wave tracing it used meant that sound had to be given the same priority as level design and graphics. Sound design had to be integrated into the level design process, instead of being an afterthought like EAX. With A3D, you had to take level changes into account to compensate for the sound; with EAX, you just did whatever you like to the levels, then picked the right environmental filters to fit it afterwards.
As for EAX…you forget that there are several iterations of the technology.
EAX 1 and 2 were later released by Creative into the public domain. Microsoft then integrated it into DirectSound. This is why you every sound chip from C-Media, VIA, Realtek, etc, can put “EAX Compatible” on the box. They *are* EAX compatible…just because it’s an extremely outdated version of EAX, and only because DirectSound supports it anyway. They now run in software on any chip.
You’re onto something when you say that HL2 produces sounds “on par with the earliest versions of EAX” – that’s because it DOES use the earliest versions of EAX. The Source engine uses Miles Audio, a piece of middleware that been around since the late nineties. Miles is a wrapper for Directsound, a more pleasant interface, and thus is EAX 1 and 2 compatible, using the same I3DL2 reverb derived from EAX 1 and 2.
EAX 3, 4, and 5.0 were proprietary, and got proportionately better. Remember, Creative didn’t shut down Aureal; they bought them out. Rumour has it Creative rolled some of the wave-tracing tech into their “Environmental Panning” feature of EAX 3, where different environments transitioned smoothly.
While EAX is dead, it lives on…sort of. EAX 5.0 (as used in Doom 3, Prey, and Quake 4), was a series of filters for both DirectSound, and OpenAL (OpenAL wasn’t mentioned in your article…bit of an oversight).
Creative rolled EAX 5 into OpenAL 1.1, still hardware accelerated, and gave it a new name (“EFX” instead of “EAX”).
OpenAL Hardware was used to great effect in the idTech 4 games. STALKER also used it beautifully; a game like STALKER does well with highly immersive audio. Some Unreal Engine 3 games also used it, like Mirror’s Edge (and, of course, UT 3).
OpenAL was Creative’s attempt to reinstate hardware acceleration in Vista. They knew DirectSound hardware was being killed off, so they got together with guys like Loki and worked on updating OpenAL. Unlike DirectSound, OpenAL is platform-agnostic – Windows, Xbox, PS3, Linux, Mac, iOS, and Android – though you do need a Creative card for hardware acceleration.
Unfortunately, Creative banked on developers actually giving a damn about sound. The devs didn’t. OpenAL is harder to use than middleware like Wwise, FMOD, and Miles – all devs seem to care about is having a nice, neat GUI for their sound. If you read the blurbs for engines like FMOD and Miles, the first thing they mention is how easy they are to use – not how powerful they are.
It’s also debatable as to how open OpenAL 1.1 is – the EFX extensions are still proprietary, and need a licence. OpenAL 1.0, though, is still free, and can still make use of hardware.
So, great article. Sorry about the length of my comment, but I just get so damn excited when someone talks about gaming sound tech…seriously, for every thousand articles about a new graphics shader, there’s maybe one about sound.
I appreciate the comment! I knew of most of those things except Half-Life 2 actually using EAX. Most details like different versions of EAX, OpenAL etc I left out simply to make the article easier to digest since most people only know a little bit about sound and I didn’t think it felt appropriate for this particular article to dive any deeper than I did. The only major games still using OpenAL are the Codemasters racing games and they use the Rapture3D software solution to create all the effects they want, but if you want you can use your Creative card if you have one for the sound effects.
That’s cool. Believe me, I know – I survived many a flame war about sound (“You got an X-Fi? Why? My onboard does EAX!!!” “Yes, but…”)
If you dig around your HL2 (or any Source game) directory, you’ll find a little file called “mss32.dll” – that’s the Miles wrapper. OK, so Miles, in this Xbox 360 world, has evolved a bit beyond being a mere wrapper for DSound3d, but the principle’s the same, and it still uses a lot of same resources and processing techniques (like EAX 1 and 2).
Why you may have noticed it compared to other games using Miles is that Valve simply *bothered* to use it to its full functionality. Most developers, with their laziness with sound, simply just use it for bog-standard stereo/5.1 out and call it a day.
It’s hard to underestimate the contempt developers have for sound – most are quite willing to pay thousands of dollars for proprietary sound engine licences and not use them to full effect, simply because they want an easy-to-use interface and don’t want to have to code (though they’ll happily spend months coding the correct pixel shader for an NPC’s eyelashes…)
Rapture 3D is interesting, not least because of it using Ambisonics for virtualised surround. I love CMSS-3D, but Rapture3D has better elevation simulation. Both kick the crap out of Dolby Headphone, CMSS-3D and Rapture3D seek to simulate the game’s actual environment; Dolby Headphone only simulates a theatre.
And that’s THE biggest thing I miss from hardware audio days – when the sound card, not the game, decided how the sound channels were used. People laugh, but headphones are always a better, easier-to-implement proposition for proper, (virtualised) 3D sound than speakers. HRTF and cross talk cancellation (as CMSS-3D uses) can place sounds at any point around the listener, even right next to their head.
Unfortunately, we’re stuck with Dolby, thanks to the home theatre-oriented consoles, and sheer bloody-minded ignorance…
Whenever John Carmack talks about sound he always mentions that sound gets 1% of processing power and that shows in Id games since Doom 3 and Rage both sound pretty dire. I find it a bit baffling how anyone could think it was ok to release Doom 3 with such abominable sound. All the samples were distorted and it had almost no bass at all. The audio designer even recommended people to raise the volume on their subwoofers for the game to sound best. Why not just have the bass there to begin with? Rage sounds ok I guess, but still sounds dead acoustically even though you’d expect there to be a fair bit of reverb in mountains and abandoned cities.
Audio when done right can do an amazing job at sucking you in as the Thief games had their audio designed to be hypnotic. Before I heard Eric Brosius describe his design that way I couldn’t quite understand just why System Shock 2, Thief etc all just grabbed my attention and sucked me in instantly. Most games don’t have that effect at all. Why spend so little effort on sound when it can really make half the experience? Oh well.
It is incredible how much difference sound makes… Watch films without sounds or without music and you realize how much of an integral part of the whole experience it is.
Developers need to pay attention to games with great sound such as Thief, System Shock, Stalker, Arma 2, etc, and invest in a good sound engineer from the beginning of a project.
Are there any ‘definitive’ resources on sound design for games on the web? This looks interesting: http://www.soundingames.com/
So, for anyone wondering, here are some random, modernish games I can think of and their sound engines:
* DirectSound: Oblivion, Fallout 3 and New Vegas, and Skyrim.
* EAX 3: GTA San Andreas, Call of Duty 1 and 2
* EAX 5.0 (via OpenAL): Doom 3, Quake 4, Prey
* Hardware OpenAL, no EFX: Mirror’s Edge, UT 3, STALKER, Mass Effect, ARMA
* Xaudio, Xaudio2: Homefront, pretty much any UDK-based game, ARMA II, Bioshock 2
* FMOD: Bioshock (with hardware EAX effects, but not hardware 3D positioning, which sucks), Crysis 1 and 2, Just Cause 2, Deus Ex, Human Revolution, Hard Reset…many, many more.
* MILES: Source games, COD 4 and above, Duke Nukem Forever.
Note: If you’re running a Creative sound card in Vista/7, certain sound engines can benefit from being run through ALchemy. FMOD and Miles games, for example, can still make use of your hardware; in fact, it’s fair to say that Miles and FMOD games run in a sort of jury-rigged, bare-minimum “failsafe mode” in Vista/7.
(Sorry if my “Games list” post above seems a bit out of place; I clicked the wrong Reply button…)
No, Simon – there are very few places for definitive sound design. It’s funny, sound is treated in a way that’s polar opposite to graphics. With graphics, you get a ton of stuff on the *technical* side – how a Shader was done, what Tessellation does – and little on the *artistic* side – where the textures came from, why they gave the female NPCs DD breasts instead of D.
With sound, you get a lot of stuff on on the artistic side – why we chose what music, why we spent half our budget getting a B-list actor to phone in some dialogue – and little on the technical side.
Also, it’s quite acceptable to crap on about the per-pixel differences of MSAA versus SSAA, but if you talk about any aspect of sound, you’re a pretentious tit. I genuinely think this attitude trickles into the games industry, as they’re all just gamers at heart. (Some guys do take it seriously; not enough, alas.)
This is one of the real benefits of hardware sound, especially on the consoles: it would force developers to stand up and take notice of the possibilities, and by giving sound its own hardware, developers wouldn’t be tempted do what they currently do and skimp on voice counts and effects to save CPU cycles (a common trick – BFBC2 was king for this…)
Rage, I found, didn’t do too badly on my Titanium HD. Elevation and close-in position was exceptionally well-handled. Apparently it was XAudio2; if so, I’m a lot more impressed with it than I used to be. It would be interesting to see if Xaudio used the same 3D buffer as DSound3d. Effects aren’t as strong as the older EAX games, but they’re still there.
I was astonished when I saw that the maximum amount of simultaneous sound samples you could pick in Serious Sam 3 was 32. I can’t see any reason why all games wouldn’t use 128 or more by default at this point. With 16 player co-op all sound channels would be filled up the instant everyone started shooting as you would have footsteps, guns, gun hits and enemies making their own noises and competing for that small space.
Maybe more than 32 would create too much of a wall of noise, but then the proper solution to that would be to have a higher tech sound engine that could filter the effects and create a real soundstage instead of just a flat wall of noise which you already get in that game as it is. In their case they can be excused since it’s an indie production, but it’s still a big issue for the game.
Exactly…this is the biggest problem we have we software sound: you can either have complex effects, or high voice counts, but not both. And it really annoys me when people say “Lol, we don’t need sound cards – we can do everything in software, now!”
No, we can’t. There’s not a sound engine used out there that can do in software what the X-Fi can do in hardware. Not without trickery (FMOD claims over 200 voices…but dig a little deeper, and you’ll find they’re “virtual voices”: ie, 2D sounds, played in stereo like an MP3 in Winamp, not processed 3D).
Show me a CPU-run sound engine that can run 128 simultaneous – ie, all at once – 3D voices, with four effects on each, while calculating HRTF/multispeaker data, while that CPU is also processing all the other data for a modern game…hasn’t been done.
Maybe more than 32 would create a wall of noise (as a point of interest, even though Unreal Engine 3 had full-on integration of OpenAL 1.1, it was hard-limited to 64 voices – probably for the consoles, since all proper X-Fis can handle 128 voices). That’s not the point; that’s like saying “Well, we’re not gonna have hundreds of enemies rendered on screen at once, since you’re not gonna be looking directly at all of them at the same time.”
32 voices is what EAX 2 could handle, back in the Audigy 1 days. I think SS3 uses Xaudio 2, and all this just leads me to believe it’s mostly just Directsound3d in a software wrapper.
And that’s what gets me; people are perfectly happy with letting sound stagnate, even *go backwards*, but if the same were to happen to graphics, it would be the biggest injustice since Hitler looked at Poland and said “I’ll have a bit of that!”
128 voices might be overkill, but there’s other things you can do with those spare voices. The wave tracing Aureal cards actually had 64 voice channels, but only played 16 unique voices at most – the spare channels were used for wave tracing, with each reflection treated as a separate channel, playing the same sound as the other channels but with different effects applied, depending on the material its reflecting off. Of course, if there were less than sixteen sounds, you got more reflections.
That’s one way of using the dearth of available voices. With, say, a 256 voice count card (not impossible with today’s tech), which would give us 256 unique voices using EAX tech, or, say, 64 voices with third-order reflections. Or a combination of both wave traced voices and EAX-style reverb to save processing power.
Pingback: Super.licio.us | Superlevel
And let me add another game with great, if imperfect sound: Far Cry 2.
The sounds of the environment, birds, flies, water, footsteps, walking through bushes, gunfire, are great. The voices of the mercenaries manning checkpoints with the South African accent are fantastic, too, but there is something ‘off’ with the loudness and positioning – they often sound much closer than they are. This is one which would probably benefit from hardware accelerated sound, but it is probably not happening with my current computer.
Despite, like most games, Far Cry 2 being coy about what sound system it uses, it actually uses EAX 3, so with an X-Fi it’ll be hardware-accelerated (or, in your case, at least have the effects processed, once you get that dongle.)
Remember, you’ll have to run it through ALchemy to get the proper effects in Vista/7. I can’t remember the exact settings, because the wrong one can introduce artifacts.
But it was good. Simple things, like the occlusion of the jungle noise inside the safehouses that pans perfectly into clear, unobstructed sound when you exit. The positioning with CMSS-3D is also excellent over headphones.
Peter, thanks for the article. I wonder why you haven’t mentioned the killing blow Microsoft dealt to hardware acceleration with windows Vista.
In any case, these days I’m running a Win7 machine with an X-Fi installed that apparently isn’t doing anything – as I find that configuring ALchemy properly for a given game is just a hassle. Why don’t games let you specify your sound card any more, or even detect it automatically?
To the best of my understanding, even with ALchemy I can’t get sound load off of my CPU.
Alchemy only really makes a difference for retro games and for more recent titles it’s pointless. Alchemy should load off the CPU, but if the game doesn’t use EAX the difference would be impossible to notice.
Well, that’s not strictly true, zip and Peter…
Microsoft killed off their own hardware abstraction layer…but that doesn’t prevent others from making their own to install on the OS. Two common examples are ASIO and OpenAL Hardware (which is why the X-Fi drivers are so “bloated” compared to the Xonar’s – it’s got a whole damn hardware abstraction layer in there’).
And Peter, it’s a bit simplistic to say ALchemy’s only worth it for EAX games. ALchemy doesn’t just restore the reverb that EAX does, but full Directsound 3D functionality.
This means that the sound card can now properly do 3D sound – ie, play sounds in a 3D space, not just in stereo.
This gives you either 5.1 surround back, or much better and much more importantly, the more accurate CMSS-3D HRTF 3D sound. You get more accurate positioning, including some stuff that 5.1 surround can’t do (close in sounds and elevation, for example.)
It also works with FMOD games, which is heavily based on Directsound 3D.
Pingback: Soundscapes – The Future of Sound | Nightmare Mode