Version
menu_open

Understanding Sends

The acoustics of an environment within your game is simulated by adding a series of Effects in an Auxiliary Bus and sending the signal to that bus. You can create as many Auxiliary Busses as you want; one for each of the different environments in your game. You also have the possibility to add Effects to an Auxiliary Bus dynamically in the game using the SDK function SetBusEffect(). Once you have defined the Auxiliary Busses with your effects, you need to define which object is sending to these busses.

You have the choice of defining the object sends statically by using User-Defined Auxiliary Sends, or by letting your game define the sends by using the game-defined auxiliary sends.

To create an Auxiliary Bus:

  1. In the Master-Mixer Hierarchy, create an Auxiliary Bus object.

  2. Inspect the Auxiliary Bus.

  3. In the Effects tab of the Auxiliary Bus, add the required Effects for the environment acoustics.

To have an object affected by an environment acoustic using the User-Defined Auxiliary Sends:

  1. Inspect the Actor-Mixer Hierarchy object.

  2. Drag & drop an Auxiliary Bus to the User-Defined Auxiliary Sends list.

  3. Use the Send volume slider to define how much signal is sent to the Auxiliary Bus, defining how much the object is participating in the environment acoustics.

To have an object affected by an environment acoustics using the game-defined auxiliary sends:

  1. Inspect the Actor-Mixer Hierarchy object.

  2. Enable the option Use game-define auxiliary sends.

  3. In the game, use the function AK::SoundEngine::SetGameObjectAuxSendValues() to assign an auxiliary send per game object.

[Note] Note

For more information on mapping environments in-game, refer to Wwise SDK - Windows > Sound Engine Integration Walkthrough > Integrate Wwise Elements into Your Game > Integrating Environments and Game-defined Auxiliary Sends in the Wwise SDK documentation. You and the audio programmer can also look at the Integration Demo, which gives examples of how to set up auxiliary sends.

Using Auxiliary Sends to Recreate Environment Acoustics - Example

Let's say you are working on a game that takes place in and around a haunted graveyard. The game is full of ghosts, and you want the ghosts to sound different depending on which environment the ghost sounds are coming from. In one section of the game, your player can explore a chapel, a tunnel, and the stairway connecting the two. For this section of the game, you define the following Auxiliary Busses:

  • Chapel

  • Stairs

  • Tunnel

You decide to give each of these three environments a distinct Reverb. For example, the tunnel is a much smaller space than the chapel, and has cavernous stone walls; therefore, its reverb will be much more pronounced than that of the chapel. In Wwise, you can create a reverb instance that will have a higher reverb level and shorter decay time to match the acoustics in the tunnel, as well as others to match the chapel and the stairs. Later, a developer maps the Auxiliary Busses that you have created to locations in the game's geometry. As a result, when a ghost is in the tunnel, ghost sounds echo far more than when the ghost is in the chapel.

Wwise auxiliary sends can also emulate the movement between environments by dynamically calculating the send volume for all of the simultaneous sends. The following diagram illustrates the in-game dynamic Auxiliary Bus routing and mixing for this example.

The proportion of each send that is applied to the particular sounds depends on the position of each game object within the game geometry. Here, your intrepid player is descending the stairs from the chapel into the tunnel, with a ghost in close pursuit. Partway through the tunnel, the player and ghost can be defined as being 100% in the Stairs environment, but also 50% in the Chapel environment, and 40% in the Tunnel environment. The ghost's sounds are then processed with each reverb instance at the appropriate percentage.


Was this page helpful?

Need Support?

Questions? Problems? Need more info? Contact us, and we can help!

Visit our Support page

Tell us about your project. We're here to help.

Register your project and we'll help you get started with no strings attached!

Get started with Wwise