Wwise/UE4 Implementation Demo
Custom Spline Emitter Blueprint
The priorities of this tool were immersiveness, performance optimisation and reusability (Figure 1).
Figure 1 - Custom Spline Emitter Blueprint positioned in the level
The position of the emitter is updated based on a timer. This timer slows down if the player walks away from the emitter and it speed up once the player gets closer (Figure 2).
Figure 2 - Update the position of the emitter
It is worth mentioning how the Wwise Spread in the custom attenuation makes the sound more immersive (Figure 3). If the player is far away from the emitter, she will perceive the sound as a 3D emitter. However, if the player gets closer, the sound will be distributed equally between the left and right channels.
Figure 3 - Wwise Spread in the custom attenuation
Custom 3D Emitter blueprint
A custom blueprint for 3D emitters was created. The blueprint has an AkEmitter and three different collision shapes (which they do not generate overlap events by default). These shapes are used to improve performance (Figure 4). In fact, the shape activates the emitter once the player overlaps and disables it when the player ends overlaps. A box was used for the computer's sound (Figure 5).
Figure 4 - Activation collision shapes of 3D Emitters
Figure 5 - An instance of 3D Emitter blueprint placed in the level
A custom attenuation set-up was made for the computer's sound in Wwise (Figure 6). A cone attenuation makes the emitter more believable.
Figure 6 - Custom attenuation for computers:
Outdoor one-shot sounds
The outdoor one-shot sounds are randomly placed around the level with a random range on the position editor in Wwise (Figure 7).
Figure 7 - Random 3D position automation for outdoor one-shot sounds
A very basic occlusion effect for the outdoor one-shot sounds is set up once the player either overlaps the volume trigger of the indoor environment or spawns inside it.
The occlusion effect is implemented in Wwise using States (Figure 8).
Figure 8 - Basic occlusion effect using states
Different reverb zones were created using AkReverbVolume. A ducking system was implemented in Wwise in order to make the mix clearer using the Wwise meter. The sidechain consists of the rifle shot ducking the "transient" of reverb (Figure 9). Therefore, the reverb will always kick in when the player finishes shooting.
Figure 9 - Reverb ducking using the Wwise meter
Line trace by channel
The line trace by channel was used both for the footsteps and the projectile's impact. The line trace detects which material the player is either walking on or shooting at and then it changes the switch containers in Wwise. In Figure 10 and 11 is showed how the footsteps were implemented.
Figure 10 - Footstep animation notify
Figure 11 - Get surface type function for footsteps
The material-based projectile sounds were implemented using a custom projectile blueprint spawned on shooting. Whenever the capsule collision component of the projectile hits a surface a line trace is performed.
An AkEmitter was inserted in the trashcan blueprint. Three different pools of sounds are played (Heavy, Medium, and Light) depending on how strong the trashcan is hit (Figure 12).
Figure 12 - Trashcan blueprint