Wwise
- Robin Bouchez
- 13 mei 2022
- 1 minuten om te lezen
Bijgewerkt op: 29 jun 2022
Version: 2021.1
00 Introduction
- THE WWISE LAUNCHER
To get up and running with Wwise you will need to download the Wwise Launcher. Download link -> https://www.audiokinetic.com/download/
After you download and install the Launcher, you will receive occasional prompts to install updates. Although you do not have to install them immediately, it is highly recommended that you do so as soon as possible. The updates do not affect your Wwise installations and integrations.
If this is your first time installing the Launcher, you must create an Audiokinetic account and login in the launcher.
Click the Wwise tab and download the latest version.
Installing Wwise
There are two primary installation methods:
Use an offline installer. This method, described in the Working with Offline Installers, is the easiest and most common way to install Wwise and ensures that everyone on a team of developers or designers has the same version and setup.
Use the Wwise Launcher. This method, offers more installation options than an offline installer and might be more appropriate for project administrators.
- THE WWISE PROJECT
Wwise is a project-based system, which means that all the audio and motion information related to a particular game for each and every platform will be in one project.
Within this project, you can do any and all of the following:
Manage the sound, voice, music, and motion assets in your game.
Define object properties and playback behaviors.
Create Events, both Action and Dialogue Events, that trigger audio and motion in game.
Create prototypes and simulations.
Troubleshoot and profile all aspects of the audio and motion in your project.
Projects also contain the SoundBanks that are generated for each platform and language version that you are creating for your game.
01 Basics
- PROJECT HIERARCHY
The Wwise approach to building and integrating audio in a game includes five main components:

Audio Structures
Events
Game Syncs
Game Objects
Listeners
The Project Hierarchy
The Wwise project hierarchy consists of three distinct levels:
Actor-Mixer Hierarchyāgroups and organizes all the sound and motion assets in your project using a series of Wwise-specific objects.
The Actor-Mixer Hierarchy groups and organizes all the sound and motion assets in your project.
object types in the Actor-Mixer Hierarchy:
Sound objects
Motion FX objects
Containers
Actor-Mixers
Interactive Music Hierarchyāgroups and organizes all the music assets in your project using a series of Wwise-specific objects.
There are two basic structures that can be applied to interactive music projects:
A vertical project structure is one in which you re-sequence the game score by shuffling the tracks contained in music segments. This is similar to the track mixing used in music production. It can help you make a varied score out of long, multi-tracked segments.

A horizontal project structure is one in which you vary the game score by changing which segments are played at any given time. To do this, you can arrange short discrete segments in the Interactive Music Hierarchy, much like you would arrange objects in the Actor-Mixer Hierarchy. In this way, you can make a compelling score from a selection of short music segments while minimizing console requirements.

Master-Mixer Hierarchyādefines the routing and output of the different sound, motion, and music structures using one or more output busses.

02 Actor-Mixer
object types in the Actor-Mixer Hierarchy:
Sound objects
Motion FX objects
Containers

Sound objects
There are two different types of sources: an audio source and a plug-in source. The most common type of source is the audio source. The audio source creates a separate layer between the imported audio file and the sound object. It is linked to the audio file imported into your project.
Containers
Random Container
Sequence Container
Switch Container
Blend Container
03 Events
Wwise uses Events to drive the audio in your game. These Events apply actions to the different sound objects or object groups in your project hierarchy. The actions you select specify whether the Wwise objects will play, stop, pause, and so on.

There are 2 types of events in Wwise:
āActionā Eventsāthese Events use one or more actions, such as play, stop, pause and so on, to drive the sound, music, and motion in game.
Dialogue Eventsāthese Events use a type of decision tree with States and Switches to dynamically determine what object is played.
04 SoundBanks
SoundBanks are the collection of both the code and the audio assets used at the time the game is played, also known as runtime. Every game created by Wwise has at least one SoundBank and, in larger more complex games, there may be many SoundBanks.
Creating a Soundbank
In the main menu, click Layouts > SoundBank or press F7.
Click New at the top of the Soundbank Manager view.
The New SoundBank dialog box opens. In the Name field, type Main and click OK.
To add an event to the soundbank, drag an event from the Event Viewer in the soundbank you just created.
Generate a Soundbank
Because multiple SoundBanks can be generated for a single game, you must first select the SoundBanks that you want to have generated.
Ensure the Main SoundBank, appropriate Platform and English (US) language check boxes are selected.
In the SoundBank Manager, click User Settings and check if the soundbank path is set correctly
Click OK to close the SoundBanks Settings window then click Generate Selected in the SoundBank Manager.
Strategies for Managing SoundBanks
05 Game Syncs
06 ShareSets
07 Sessions
08 Queries
09 Profiler
10 Advanced Topics
11 Source Control
FOR UNREAL ENGINE 4
Installing Perforce & Wwise Enabled Source Control
First we install Perforce, then setup connection details of Perforce in Wwise.
You will need to install the correct Perforce software. Normally in larger game dev teams Helix Visual Client P4V will be used. https://www.perforce.com/downloads/helix-visual-client-p4v
Once installed, the team you are working with will give you details & address IDās to connect Perforce Helix to. This enables you to connect to the same project server data that the entire team are working with. Also, allowing you to have access to the project data, so you can download the projects content TIP: Obviously, never share any connection details without outside of the team you work with
Once P4V is set up and working, open Wwise
In the Wwise Tool bar, navigate to: Project > Project Settings > General tab > Workgroup. Under plugin, in the drop-down menu, change to the Perforce option.
Then click on the Config UI Button. Input the connect to server details ID address.
Click okay to confirm.

What Exactly does Source control do?
Every time you save in Wwise or unreal, the associated content you have modified will then be checked out in Perforce, into a submissions list that can then be submitted to a central server location
(NOTE: New files are not automated, these will need to be marked manually as āAddā to be shown in the Perforce submission list)
Perforce What To Submit
If you are working with a central file manager (e.g. Perforce) to a central location, you will need to submit your local updates to the live server.
Below is a list of files you will generally need to upload:
Wwise: Anything not a cache file with the prefix āWwiseProjectā ā DO NOT submit any cache folders or content
In your EU4 project folder include the "Plugins/Wwise" folder
If you don't include this folder other people will not hear any sound coming from Wwise.
You can also integrate Wwise manually with the Wwise launcher to get the "Plugins/Wwise" folder.
-> https://www.audiokinetic.com/library/edge/?source=UE4&id=installation.html
Any TEST folders & Content (If you made any)
The UE4 map containing audio emitters
Tip: In your UE4 main/persistent level, create a seperate audio level so you don't need to check out the whole main level in perforce.
Audio assets in the UE4 Audio folders
Content/WwiseAudio folders / content
Ensure you upload the Wwise Project contents folder & the Wwise Sound Banks kept in different UE4 folder hierarchy (WwiseAudio)
Resource: https://gameaudioresource.com/
12 Project Managment
Setting up a AAA Wwise project by Cujo Sound:
Part 1 THE BASICS:
https://www.youtube.com/watch?v=0v-be268YFc
Part 2 TEST EVENTS, COLOR CODES & GENERIC SHARESETS: https://www.youtube.com/watch?v=K_saKTcVkNM
Part 3 BASIC RTPC'S, SWITCHES, STATES, . . . : https://www.youtube.com/watch?v=Bxt4f9OBIso&t=476s
Part 7 DISTANCE DEBUGGING : https://www.youtube.com/watch?v=Us9BnS7mFsE
13 Virtual Voices
What is a Virtual Voice:
Sounds below a certain volume level should not take up valuable processing power and memory. Instead of playing these inaudible sounds, the sound engine can queue them in the virtual voice list. Wwise continues to manage and monitor these sounds, but once inside the virtual voice list, they are no longer processed by the sound engine and wonāt take up one of the hardwareās physical voices.
When a voice is active, itās referred to as a physical voice, wherein Wwise:
Decodes the audio file.
Resamples the sound (if used, applies Pitch Shift).
Applies Effects and filters.
Performs volume computation.
When a physical voice becomes virtual, Wwise ignores all steps except the 4th, volume computation. The volume computation step is required for Wwise to know when itās loud enough to again become physical.
Managing Virtual voice behavior can be done for any sound object, Actor-Mixer, or Audio Bus in the Advanced Settings tab of the Property Editor.

There are four Virtual Voice behaviors (From phisical voice to virtual) :
Continue to play - Continues playing the object as a physical voice even though it will no longer be heard.
Kill voice - Stops playing the object. No fade out is applied with this option.
Send to virtual voice - Sends the object to the virtual voice list.
Kill if finite else virtual: Kills the voice if not looping infinitely, else it will send it to virtual voice with Play from elapsed time option selected. This option is good for most of the Audio Objects in the project.
When sounds or motion objects return from virtual voices to phisical you have three option:
Play from beginning - Plays the object from its beginning. This option resets the object's loop count.
Play from elapsed time - Continues playing the object as if it had never stopped playing.
This option is not sample accurate, so sounds returning to the physical voice may be out of sync with other sounds playing.
Resume - Pauses the object when it moves from the physical voice to the virtual voice list and then resume playback when it moves back to the physical voice.

Resouce: https://www.audiokinetic.com/courses/wwise251/?source=wwise251&id=Video_251_10#read
14 Streaming
Options for streamed files:
Non-Cachable: Leaves no cache when streamed audio plays. Good for long loops or non-recurring sounds that have no reason to stay cached in memory after completion. In WAG, this option is selected for all dialogues because they usually only occur once.
Zero Latency: Eliminates the latency of streamed files by creating a small buffer of the beginning part of the audio file. Useful for the music in WAG because two themes are playing concurrently and, as such, the timing of the triggering is essential.
Prefetch length (ms): Refers to the milliseconds of time youād like to store in the memory. With everything in WAG this is left to its default of 100 milliseconds.
Official documentation: https://www.audiokinetic.com/education/learn-wwise/



Opmerkingen