Created By: Game Audio Resource Ltd Date: 09/11/2019 Version: 1.00
Wwise Unreal: Chapter 03 B –
Environment: 3D emitter Ambience
In this guide we implement a looping light water splashes audio asset to be tagged as 3D emitters around the water edge of our map island.
The process this guide highlights can then be used to place as many different 3D emitters for other audio content types in the world map.
GUIDE STEPS:
- STEP 01: Wwise Hierarchy
- STEP 02: Unreal Hierarchy
- STEP 03: Tagging The Map With Emitters
- STEP 04: Test
- Further Reading
Download the free associated written guide:
Wwise_Unreal_Chapter_03B_Environment_3D_Emitter_Ambience
Video Guide
Written Guide
STEP 01:
Wwise Hierarchy
First we set up the needed Wwise & Unreal data for the content to be tagged into the world map.
- Navigate to the Actor-Mixer Hierarchy > Default Work Unit > SFX > Environment Work Unit
Right click then select: New Child > Actor Mixer
Name It: ENV_Water_Splash. - Select the Actor Mixer. Then in the Property Editor > General Settings tab > Output Bus, drag the Environment Audio Bus on to the box called: Master Audio Bus
- Right click the Actor Mixer, then select: New Child > Random Container
Name it: ENV_Water_Splash_Loop - Drag in 2 continual looping light water splashing movement audio assets into the Random Container
Place them under the File Importer Destination path:
SFX > New Folder – Environment > New Folder – Water_Splash - Select the Looping audio assets individually, then in the Property Editor > General Settings tab, tick the Loop box for each asset.
- In the Sharesets tab we will add a basic 3D small attenuation.
Navigate to the Sharesets tab. Right click the Environment Work Unit, then select: New Child > Attenuation
Name it: ATT_ENV_Small
Open the Attenuation, then add the following changes:
Change the Max Distance to 1500
In the graph, add a point marker to the red line then move the marker to the following co-ordinates:
X = 500, Y = 0
Right click the red line after the 500 point marker, then select the Logarithmic (Base 3) Curve
Close the Attenuation Window - Navigate back to the audio tab, then select the Water_Splash Random Container.
In the Positioning tab add the following changes:
Tick Override Parent
Under Listener Relative Routing > 3D Spartialization, change the drop-down menu to Position + Orientation.
Under Attenuation > Assign the new Attenuation: ATT_ENV_Small - Right Click the ENV_Water_Splash_Close Random Container > then select: New Event > Play
- Select the Event Editor Play Action line, then change the fade time value to 0.3
– TIP: This will make the looping water asset fade in when the map is started. - Navigate to the Events tab & locate the Event.
Rename the Event to: SFX_ENV_Water_Splash_Loop_Start - In the Events tab, right click the Environment Work Unit, then select: New Child > Virtual Folder
Name it: ENV_Water_Splash. - Drag the Event into the New Virtual Folder.
- Copy and paste the new Event into the same folder.
Select the New Copied Event. Rename it to: SFX_ENV_Water_Splash_Loop_Stop.
Then in the Event Editor List change the Play Action to a Stop > Stop Action type. - Change to the Wwise Layout: SoundBank
- Generate the SB_Environment Sound Bank & save your Wwise Project updates.
– TIP: The Event should be auto added, from the steps we set up in Chapter 02, but it is always a good process to double check the event does exist in the sound bank.
If the Event does not exist, simply drag the Event into the SB_Environment Sound Bank Add tab.
STEP 02:
Unreal Hierarchy
Next, we add the new Wwise content to Unreal
- In the Content Browser > Content > Audio > Wwise Events > Environment folder, right click then select: New Folder
Name it: ENV_Water_Splash - Open the WwisePicker, then drag the SFX_ENV_Water_Splash_Loop_Start & Stop Events into the new ENV_Water_Splash Folder.
- Select both the events, then right click & select Edit. then in the drop-down menu select the SB_Environment Sound Bank.
- Close the window and save the event update.
- In the Unreal Toobar > Build option, select
Generate SoundBanks
Then in the new window, select the SB_Environment Sound Bank & leave all Platforms selected.
Click the Generate UI Buttons
After a few seconds a popup window is displayed in the lower right of your screen, choose to import the new Sound Bank updates.
STEP 03:
Tagging the Map With Emitters.
This step will outline how to place an emitter into the default test map, so you will hear the water splash loop content trigger is a 3D world position. Using attenuation’s the sound will fade in / out as you move closer & away from the emitters position.
- Load up the new test map we have created (or the map you are working with)
Drag the Event SFX_ENV_Water_Splash_Loop_Start into the map.
Then move the emitter to a spot of the map where you would like to hear water splash loop. E.g. on an area of water.
Then in the Details tab, add the following changes:
> Under Ak Component > Occlusion Refresh Interval > change the value 0.0.
– TIP: This turns audio occlusion off
> Under Spatial Audio > Untick > Use Spatial Audio
– TIP: For this basic guide we are not using advanced audio techniques
> Under AK Ambient Sound > Tick the Auto Post Tick box.
– TIP: This enables the event to be loaded when the map loads - In the World Outliner hierarchy, right click the Audio Folder, then select: Create SubFolder.
Name it: ENV_Water_Splash
Move the Event into the New Folder.
– TIP: It is good practice to put different audio content types/emitters into unique folder structures for consistency and quick viewing. Try to match the folder hierarchy structure of Wwise / UE4 to keep consistency throughout your project process path flows. - Save the map updates.
STEP 03:
Test
Now we can test the update in game.
- Connect Wwise to the Unreal Editor
- Change to the Wwise Layout: Profiler
- Click Play in Unreal to load the map
- Move the Player character to the position of the new 3D Water_Splash emitter.
You should now hear the associated audio assets implemented.
If you turn the player character, so the emitter is to the left of the camera, you should now hear the sound coming mainly from the left speaker. This ensures 3D positioning is working correctly. - Making any attenuation or balancing setting updates you may wish to make.
- Save your Wwise updates
- Disconnect Wwise from Unreal, then generate the Wwise Sound Banks.
- Lastly, Generate the UE4 Sound Banks.
Now you can implement 3D emitters you can populate the map with as many emitters as you wish.
For Example:
* Add multiple Water splash emitters around the costal line of your island.
* Add an emitter to the firepit flame we created in Chapter 01.
Further Reading
In a professional environment Blueprints may be created so you could utilise a spline emitter around the island costal line. Spline lines allows an audio emitter to play and track along a spline line closest to the Listener Position (e.g. the player character) Allowing only one emitter / Wwise Event to play in memory instead of multiple single emitters being placed.
This process takes a while to set up
If you would like to investigate spline line audio tech further, there is a free UE4 plug-in created for this process.
Please see this link for more information: https://blog.audiokinetic.com/volumetric_audio_emitter_for_custom_shapes_in_ue4/