7.1) Soundcaster Sessions
There comes a point in Game Audio integration, where the focus turns to the more subtle nuances of how the various sounds you’ve integrated into the game work with each other. It’s important that each sound contributes without becoming a distraction. This is where the art of mixing comes into play.
Compare and contrast this process with how sound is mixed in movie production. In audio for movies, all of the audio is collected together and played through a large mixing console that provides the Sound Engineer with quick access to controls used to modify hundreds of channels of sound until they all seamlessly blend, creating a uniform soundscape that compliments the picture. You can recreate a similar workflow with Wwise when you create custom Virtual Mixing Consoles where Object Properties can be viewed in the form of mixer strips like channel strips seen on Audio Consoles or in the mixer view of a Digital Audio Workstation. Furthermore, you can assign these Properties to physical knobs and faders of nearly any MIDI-based Control Surface, providing a tactile connection to the sound you’re adjusting. This way you can manipulate multiple Properties simultaneously to speed up your workflow.
The major departure from a film-based workflow is that Sound Engineers can’t click play on the project and all sounds will play according to when they occur on a timeline. With video games there is no pre-determined timeline – sounds play based on when events happen in a game. This makes testing how sounds interrelate with each other a bit more difficult.
Until now, to play a sound you have selected a corresponding Object, such as a SFX Sound Object, or an Event Object and clicked play in the Transport Control View. To try and play multiple Objects at the same time would require that you quickly repeat that process multiple times trying to play additional sounds while the earlier ones are still heard. To make this a bit easier, it’s possible to pre-arrange multiple instances of the Transport View, each targeting a specific Object so that you can quickly play different Objects. You can do this using Wwise’s Soundcaster feature.
In the Main Menu, choose Views > Soundcaster or click Shift+S. The Soundcaster opens.
Toward the top of the window you see the Transport Controls, and just below you see areas displaying all of the game's States, Switches, and RTPCs that you’ve already learned about. You will also see Triggers, which are used for interactive music. Using these controls, you can see how changing these values affects the sounds you’re going to play. Below this section you see a blank area indicating that you need to create a new Soundcaster Session.
In the upper left, click the Selector menu >>, then click New. (Pic01 Create a Soundcaster Session)
The New Soundcaster Session dialog box opens. Soundcaster Sessions are stored in Work Units found in the Soundcaster Sessions folder. You can view the Soundcaster Sessions folder in the Sessions Tab of the Project Explorer.
Select the Default Work Unit, type in Level1 in the name field, and click OK. A new Soundcaster Session is created. (Pic02 New Soundcaster Session)
The Tab in the upper left corner of the Soundcaster indicates that the Level1 Soundcaster Session is active; however, there still aren’t Object Transports displayed in the lower section of the window. If you look closely, you’ll see dots that make up a grid where you can load Objects that you want to play in this Soundcaster Session. Adding Objects to a Session is a simple matter. Drag them into the window where you want them to appear on the grid. Start by dragging some of the Event Objects from adaptive playback systems from the Event Viewer into the upper left corner of the Soundcaster Grid.
Drag a few Events to the Soundcaster Session. (Pic03 Adding Events to Soundcaster Session)
You can see that the Object is represented with a small version of the Transport Control that you’ve used in previous lessons. The main advantage of a Soundcaster is that you can continue to add more Objects into what you can think of as a multiple Transport Control area. Above these controls you see areas that display the various Game Syncs such as States, Switches, and RTPCs. Notice how the Game Syncs displayed change, as you add Events depending on them.
Experiment in playing the various Event Objects and changing Game Syncs. (Pic04 Changing Game Syncs)
By default, a Soundcaster only displays Game Syncs that correspond to Objects that you’ve loaded. You can force particular Game Syncs to appear by selecting the Show All buttons next to each Game Sync header.
Notice that on the right side of each Object’s Soundcaster module there are Properties for Volume, Pitch, and LPF (Low-Pass Filter). No values are displayed in these fields because Event Objects don’t actually contain these Properties. To adjust these Properties, you would need to also include the Objects that are being triggered by these Event Objects.
In the upper left, click the Selector menu >> again, then click New and name the new Session AtmoLevel1.
Now add the playAtmo Event and also the Atmo Random - and Blend Containers from the Actor-Mixer Hierarchy to the Soundcaster Session. (Pic05 Adding Container to Soundcaster Session)
Now you see the Volume, Pitch, and LPF Properties displayed and can easily make adjustments to their values while playing back the atmo Event. This is a very convenient way to better mix together various elements of your soundscape. You can even use Solo or Mute functionality to better focus and/or blend out certain elements.
Because Soundcaster lets you lay Objects out in any way you choose, it does not usually reflect the hierarchy structure you see in the Project Explorer. For example, the Traffic Blend Container actually contains the Horn1, Horn2 and Traffic Objects, so making adjustments to the Traffic Blend Container Properties within Soundcaster is actually offsetting the Property values for all of those other Objects contained within.