Open world games provide unique challenges for any audio team. Combine this with the characters ability to walk, run, jump, climb over obstacles and swim, drive a wide range of vehicles as well as engaging in martial arts and weapon based combat.
After four years in development and a change of publisher in the process, United Front Games came out with Sleeping Dogs published by Square-Enix. We asked Saki Kaskas, Scott Peters, and Jon Mitchell from the audio department to share their experience with Wwise in the development of Sleeping Dogs and its impact on the game creation process.
Can you give us a bit of your background before you started on that game?
Saki: I came from working on various games at EA as a composer, sound designer and, eventually, audio lead.
Scott: I came from a non-gaming programming background, and didn’t have a lot of first-hand experience with interactive audio. I was working at a space technology firm on satellite imaging systems.
Jon: I was an audio programmer at Radical in Vancouver working for their Advanced Technology Group on their next-gen engine for Prototype, and before that was a gameplay audio programmer at Codemasters in the UK working on the Colin McRae rally series.
Can you describe Sleeping Dogs to us?
You follow the story of Wei Shen, an undercover cop, as he infiltrates one of Hong Kong’s most ruthless triad gangs, taking it down from the inside and exacts bloody revenge for a death in his family. It’s a dark and often violent open world action game where you can be involved in dramatic foot chases, close quarters hand to hand combat, intense gun battles, and high speed car chases, all within the space of a few minutes. From an audio design point of view, it’s incredibly rich and varied.
Can you qualify how the transition from the previous audio tech to Wwise has been?
Wwise shares a lot of concepts with in-house audio technology I’d worked with previously, so learning to use it was pretty simple for me. Wwise was already fully integrated into our game when I started at UFG, so that wasn’t something I had to deal with. UFG’s a relatively young company, so we didn’t have a lot of legacy systems that required porting over – for the most part our game audio technology has been built on top of Wwise directly, which makes things easier in that regard.
Does using Wwise change the role of the audio programmer? For which aspects?
I think it’s made it easier for designers and programmers to collaborate and communicate – all the designers and programmers on the audio team for Sleeping Dogs became very familiar with it, and how best to realise their designs within its framework. When adding a new feature, it was very common for the audio guys to come to the programmers with their events, SoundBanks and RTPCs already set up and tested in the Soundcaster, with a good idea of how they would be integrated into the game. That sort of pre-testing of game features essentially replaced what would have been done with a detailed design document in the past.
Any particular aspect of Wwise you especially appreciated?
If I had to single out one thing about Wwise, it would be the capture log and profiler, it’s just incredibly useful for testing, debugging and optimizing. I probably spent more time looking at that when finalling Sleeping Dogs than anything else.
Can you talk of your experience with the support from Audiokinetic?
The support was great, they’d always get back to us within a couple of days with some helpful advice– usually sooner if my emails sound especially urgent or panicky, which wasn’t uncommon around deadlines.
What were your ideas for the audio on Sleeping Dogs?
Sleeping Dogs was the first open world game that I worked on. It didn’t take long to realize that this genre is the most challenging type to develop. From the start, we realized that we were going to have to manage our resources carefully in order to meet the demands of a rich aural experience. One of the things we needed to do was to capture the density of Hong Kong from a sound point of view.
To capture the density of Hong Kong we created a rich ambience that changed depending on location, time and weather. We wanted to avoid streamed multi-channel ambiences because our game was already relying heavily on streaming. Our approach to the ambiences utilized layers of sound. Each layer focused on different elements. We ended up with 12 layers or so: There was a ‘city tone’, a crowd loop, many emitters emitting point source sounds like air conditioners, animals and fountains, a wind loop, a rainfall loop, a distant traffic loop, etc. Each of these layers was affected by all sorts of parameters like time of day, weather state and number of pedestrians. So, an empty street would be void of crowd noise, but you would still hear the city tone and distant traffic. The distant traffic would be affected by time of day and number of traffic vehicles. So, if you were to stand on an empty street at 3 am, the distant traffic would play very sparsely as opposed to standing on the street at noon with many traffic vehicles in site.
In addition to the ambiences, we wanted an interactive score to accompany gameplay. We designed it in a very simple manner. Music would cue for three main types of gameplay: Combat, Chases and infiltrations. Because there was lots of driving in the game, we decided to incorporate a radio much in the same fashion as GTA. Also, we used music in the ambient world quite a bit. We had radio emitters play out of restaurants, 711’s, people’s apartments and so on.
Our vision for the sound of hand to hand combat could be defined as ‘hyped up reality’. We took our inspiration from movie’s such as Snatch and Bourne Ultimatum. We wanted a visceral sound to the melee combat. In addition to this, we wanted big sounds for the gun fights and we wanted varied playback of gun sounds depending on their distance. We crossfaded 3 sets of samples per each gun so that very distant gun shots would play a different sample than a close up one.
All in all, the audio for Sleeping Dogs was designed after the style of an action movie like Bourne Ultimatum. We used special audio treatments for special camera effects like filtering out specific sounds during certain gameplay moments, like your player character (Wei) suffering from low health or Wei delivering a devastating blow in slow motion.
How did Wwise help to achieve your vision?
When we started development in 2008, Wwise didn’t have the external sources feature. As a result, we kept all of our dialogue structures and assets in the project. Because of the sheer size of the dialogue, the amount of memory that the objects and structures started to get out of hand pretty quickly. When Wwise released the version that contained the external sources, we were saved. This feature freed us a lot of memory and, without it, we would have spent a lot more time managing the resources. Fortunately for us, the external sources bought us more time to work in other areas.
Wwise has a robust interactive music system that covered all of our needs in this department. I would like to say that we had very little problems with the interactive score. I remember in the latter stages of the project thinking to myself how very few bugs were reported for the interactive music.
We used the effect plug ins in Wwise extensively. We weren’t able to use the IR reverbs due to memory constraints, but we did put the matrix reverb to use in most of our indoor spaces. Also, we used a slap back echo to good effect on dialogue so that its wet level was amplified the further away the source played. This was all handled through Wwise’s RTPC system which I found to be very flexible. SoundSeed Air was very useful as well. We used that for our whoosh, wind and other noise elements.
Sleeping Dogs is a complex game that needed many different mix states depending on what was going on. We found that the recent improvement in the mix states accommodated us very well. We were able to apply many different mix states to our game. The system performed solidly and it was intuitive and reliable. We also used the Wwise meter as a sidechain which was very helpful when it came down to the car radio in particular. We used it on the car radio so that the engine noise would attenuate if the user turned up the radio volume.
Any favourite features you’d like to mention?
The Wwise profiler is my favorite feature in Wwise. I love how you can monitor CPU usage, memory usage, volume setting for any sound, you name it. Wwise keeps track of everything. I’ve used other audio middleware software and Wwise’s profiler is second to none. I also liked the mix states feature. We used it extensively throughout our game and the feature worked reliably and intuitively.
What have been the main benefits of using Wwise for the project?
Wwise is a complex tool that is designed for sound designers, really. As complex as it may be, it’s learning curve is not intimidating. Myself and the many colleagues that I worked with all had the same experience when learning how to use the tool. Once again I’ll mention the profiler, it is the best debugging tool I’ve ever come across in the 17 years I’ve been in this industry and I loved Wwise’s Perforce integration. I was pleasantly surprised at how easy it was to set that up. The Perforce integration allowed us to manage the project with multiple users with minimal conflict.
In my opinion, Wwise is the best third party audio middleware software on the market today, the support team was always helpful, responsive and reliable.
Anything you’d like to add?
I look forward to using Wwise again in the future, especially with next gen on the horizon, the convolution reverbs and the new aux send features.
Clearly, the audio team enjoyed the creation process using Wwise, and we are excited to see what they will come up with for their next title. Keep up the great work guys!
From left to right : Saki Kaskas, Scott Peters and Jon Mitchell