Wwise SampleProject en
Wwise SampleProject en
2019.2.1
Sample Project
Sample Project
Wwise 2019.2.1 Revision 3707
Copyright © 2020 Audiokinetic Inc. All rights reserved.
This document (whether in written, graphic or video form) is supplied as a guide for the Wwise® product. This documentation is the property
of Audiokinetic Inc. (“Audiokinetic”), and protected by Canadian copyright law and in other jurisdictions by virtue of international copyright
treaties.
This documentation may be duplicated, reproduced, stored or transmitted, exclusively for your internal, non-commercial purposes, but you may
not alter the content of any portion of the documentation. Any copy of the documentation shall retain all copyright and other proprietary notices
contained therein.
The content of the Sample Project documentation is furnished for information purposes only, and its content is subject to change without notice.
Reasonable care has been taken in preparing the information contained in this document, however, we disclaim all representations, warranties
and conditions, whether express, implied or arising out of usage of trade or course of dealing, concerning the Sample Project documentation and
assume no responsibility or liability for any losses or damages of any kind arising out of the use of this guide or of any error or inaccuracy it may
contain, even if we have been advised of the possibility of such loss or damage.
Wwise®, Audiokinetic®, Actor-Mixer®, SoundFrame® and SoundSeed® are registered trademarks, and Master-Mixer™, SoundCaster™ and
Randomizer™ are trademarks, of Audiokinetic. Other trademarks, trade names or company names referenced herein may be the property of their
respective owners.
Footsteps, 24 hour ambiance, Minigun audio content provided by Soundelux Design Music Group
© 2007 Soundelux Design Music Group
www.soundeluxdmg.com
The Audio Content contained in this digitally watermarked file is the property of Soundelux Design Music Group. Your sole right with regard
to this Audio Content is to listen to the Audio Content as part of this Sample Project. This Audio Content cannot be used or modified for a
commercial purpose nor for public demonstration.
Interactive Music audio content provided by Michael McCann and Tim Rideout
© 2007 Michael McCann and Tim Rideout
www.behaviormusic.com
www.timrideout.com
The Audio Content contained in this file is the property of Michael McCann and Tim Rideout. Your sole right with regard to this Audio Content
is to listen to the Audio Content as part of this Sample Project. This Audio Content cannot be used or modified for a commercial purpose nor for
public demonstration.
2
Table of Contents
1. About the Sample Project ..................................................................... 1
Wwise Sample Project ....................................................................... 2
About the Project .............................................................................. 2
2. Project Details ....................................................................................... 4
Project Details ................................................................................... 5
Bus Routing - Master-Mixer Hierarchy ............................................. 5
Example: Footsteps ............................................................................ 5
Example: Minigun ............................................................................. 8
Minigun Details: Events ............................................................ 9
Minigun Details: Sounds ......................................................... 10
Example: Car Engine ....................................................................... 11
Porsche 911 - Blend Container ................................................ 11
Car Engine Details: Matching Pitch to RPM Using
RTPCs .............................................................................. 12
Car Engine Details: Using Blend Containers ................... 13
Chevrolet Camaro - Crankcase Audio REV ............................. 13
Example: New York City Ambience ................................................. 14
Example: SoundSeed Impact ........................................................... 15
Technology Overview .............................................................. 15
Offline Processing .................................................................... 16
Runtime Processing ................................................................. 16
SoundSeed Impact: Details ...................................................... 17
Quick Overview ....................................................................... 17
Detailed Examples ................................................................... 21
Example: Dialogue ........................................................................... 25
Dialogue Details: Understanding Dynamic Dialogue .............. 26
Fallback Mechanism ................................................................ 27
Example: Ambisonics ...................................................................... 28
Ambisonics Example: Ambisonic City 3D Ambiance .............. 29
Ambisonics Example: Helico Passby Overhead ....................... 30
Ambisonics Example: Ambisonic City Ambiance .................... 30
Example: Music ............................................................................... 31
Game Music Details: Looking at Interactive Music ................. 32
Game Music Part 1: Learner’s Permit ...................................... 33
Game Music Part 2: In the Driver’s Seat ................................. 34
Example: MIDI Music ..................................................................... 36
Music Structure ....................................................................... 36
MIDI Music - A Hybrid Approach .......................................... 38
Factory Assets .................................................................................. 39
3. Need Help? .......................................................................................... 40
Using Help ....................................................................................... 41
Further Resources ............................................................................ 41
iii
Chapter 1. About the Sample Project
Wwise Sample Project ............................................................................... 2
About the Project ...................................................................................... 2
1
About the Sample Project
2
About the Sample Project
Note
Materials sent by content providers were all originally high
quality (48 kHz, 16 or 24 bit). However, to save download time
and disk space, we have reduced the size of some of the sound
assets.
3
Chapter 2. Project Details
Project Details ........................................................................................... 5
Bus Routing - Master-Mixer Hierarchy ..................................................... 5
Example: Footsteps .................................................................................... 5
Example: Minigun ..................................................................................... 8
Minigun Details: Events .................................................................... 9
Minigun Details: Sounds ................................................................. 10
Example: Car Engine ............................................................................... 11
Porsche 911 - Blend Container ........................................................ 11
Car Engine Details: Matching Pitch to RPM Using RTPCs
.................................................................................................. 12
Car Engine Details: Using Blend Containers ........................... 13
Chevrolet Camaro - Crankcase Audio REV .................................... 13
Example: New York City Ambience ........................................................ 14
Example: SoundSeed Impact ................................................................... 15
Technology Overview ...................................................................... 15
Offline Processing ............................................................................ 16
Runtime Processing ......................................................................... 16
SoundSeed Impact: Details .............................................................. 17
Quick Overview ............................................................................... 17
Detailed Examples ........................................................................... 21
Example: Dialogue ................................................................................... 25
Dialogue Details: Understanding Dynamic Dialogue ...................... 26
Fallback Mechanism ........................................................................ 27
Example: Ambisonics .............................................................................. 28
Ambisonics Example: Ambisonic City 3D Ambiance ...................... 29
Ambisonics Example: Helico Passby Overhead ............................... 30
Ambisonics Example: Ambisonic City Ambiance ............................ 30
Example: Music ....................................................................................... 31
Game Music Details: Looking at Interactive Music ......................... 32
Game Music Part 1: Learner’s Permit .............................................. 33
Game Music Part 2: In the Driver’s Seat ......................................... 34
Example: MIDI Music ............................................................................. 36
Music Structure ............................................................................... 36
MIDI Music - A Hybrid Approach .................................................. 38
Factory Assets .......................................................................................... 39
4
Project Details
Project Details
The following sections describe each of the project’s examples in detail.
Feel free to experiment with these examples in Wwise. Before doing so,
however, you may want to save a backup copy of the original sample
project to your hard drive.
Note
The sample project has been set as if it would be integrated in
an actual 3D game where reverbs are dynamically assigned at
runtime. Therefore, the objects in the Actor-Mixer hierarchy
have been set to use the Game-Defined Auxiliary Sends and
not the User-Defined Auxiliary Sends.
Note
The “Music” bus is flagged as “Mute for Background Music” to
be compliant with technical certification requirements for Xbox
One™, PlayStation® 4, iOS, and Android™.
Example: Footsteps
The Footsteps example demonstrates how you can create a simple
hierarchy of Switch Containers to create variation for an otherwise
repetitive sound.
5
Project Details
In this example, the parent Switch Container includes three footstep types:
• Crouching
• Walking
• Running
Each of these three footstep types contains another Switch Container that
determines the surfaces on which the characters will walk:
• Concrete
• Gravel
• Hard Metal
• Hard Wood
• Water
6
Project Details
7
Project Details
Example: Minigun
The Minigun example demonstrates how the sounds of a complex firearm
can be simulated in a game by using Wwise.
8
Project Details
For the Stop_Minigun Event, the Break action has been used to stop the
“Fire” and “Shells” random continuous containers that use the “trigger
rate” transition type. The Break actions stop the containers to trigger new
fire or shell sounds without cutting the tail of the sounds that have already
been triggered.
9
Project Details
Note
• Fire sounds: The minigun discharge sounds are included in the “Fire”
Random Container. This container is set to trigger a new fire sound
every 0.05 seconds in an infinite loop. The Trigger rate transition option
ensures that a new sound is triggered at the frequency defined in the
Duration field without interrupting the previously played sounds. A
limit of five instances per game object has been set in the Fire sounds
Advanced Settings to restrict CPU usage.
10
Project Details
Note
The trigger rate is not always rhythmically perfect when
the “Fire” container is played back within Wwise when the
transport is set to play the original audio files. This happens
because original files are streamed from the hard drive. This
is a playback limitation within Wwise only; when played
back from a game, the timing of each fire sounds is sample
accurately perfect and constant.
Note that the frequency of the trigger rate for the shells is slower than
the fire rate. This decision was made simply because the slower rate
sounded better.
A limit of five instances per game object has been set in the Shells
sounds Advanced Settings to restrict CPU usage.
11
Project Details
Note
To hear even better audio results, you can use the CarSim
application located where you installed Wwise in Samples
\SoundFrame\CarSim.
Each of the engine sounds (except idle) has a pitch curve attached to
RPM game parameter. To speed up the process, Wwise allows you to
automatically draw a pitch curve based on the actual RPM at which a file
was recorded. To use it, right-click any graph segment and select Build
Smart Pitch Curve. For more information on this or any other feature,
refer to the Wwise Help.
You might have noticed that while certain engine sounds will not play at
certain RPM values, each sound’s pitch curve still extends for the full range
of possible RPM values. In this case, because the curves extend past values
that will be used, points have been removed to save runtime memory.
12
Project Details
Note
Mac Authoring Tool: Users cannot use Crankcase Audio REV.
13
Project Details
Note
This example shows the plug-in doing the full car engine
simulation. That may suit certain games just right. For games
needing more control over the car simulation, it's possible to
control the car throttle, RPM, gear and velocity using game
parameters. Again, refer to the plug-in documentation if you'd
like more details on this.
The ambient sounds subtly disappear as the rain becomes stronger. The
Rain_Intensity game parameter also modifies the volume and low pass
filter properties of many of the objects inserted on certain blend tracks.
A single blend container containing nine tracks has been used for this
example. Each of the blend tracks contains one or several sounds or
Random Containers. Before looking at the Blend Track Editor, you can
look at the behavior settings of each Random Container to understand
how each of these has been set up. The transitions options should be of
particular interest.
14
Project Details
Technology Overview
15
Project Details
Offline Processing
Runtime Processing
During the runtime processing stage, the information in the resonance file
is re-introduced with the residual file using efficient frequency filtering.
This creates a new sound that retains the characteristics of the original
analyzed file. What makes it so powerful is that you can modify the
resonance parameters within the text file during re-synthesis to generate an
unlimited number of variations that are slightly or largely different from
the analyzed sound.
16
Project Details
Be sure to check the "Notes" field of the various sound elements to read
additional information.
Quick Overview
This folder contains a series of subfolders that give you a general overview
of using SoundSeed Impact in your game productions.
17
Project Details
• 1_EmptyPlasticBottle_FrequencyControl—demonstrates the
effect of frequency transformation in isolation. Play with the
"PlasticBottle_Frequency" RTPC slider in the Transport Control
to affect the perceived size of the bottle without getting pitch shift
artifacts or duration changes.
• 2_MetalHit_DampingControl—demonstrates the effect of bandwidth
transformation in isolation. Play with the "MetalHit2_Resonance"
RTPC slider in the Transport Control to see how changes to the
bandwidth stretching property can affect the resonance. Reduce the
value to 0 for more damping, or increase it to 100 for less damping.
Ctrl+click the slider to return it back to the original value of 50.
Notice how the sound does not get truncated when using less
damping as it would when using a multi-band EQ.
• 3_Machinery_MagnitudeControl—play for a bit and then increase
the magnitude variation RTPC slider in the Transport Control to 100
and listen how a random weight on each resonance creates a different
impact every time. These changes are akin to different weight or strike
position.
• 2_GettingRandomVariations—this folder contains examples that
show how virtually an unlimited number of playback variations can be
achieved from a single source file. Play the Random Container for each
example.
18
Project Details
19
Project Details
20
Project Details
Detailed Examples
21
Project Details
22
Project Details
23
Project Details
24
Project Details
Example: Dialogue
The Dialogue example demonstrates how you can use Wwise’s dynamic
dialogue features to organize dialogue that adapts to gameplay situations
as they happen. Dynamic dialogue uses a set of rules within a decision-tree
structure to determine which piece of dialogue to play at any particular
moment in game.
In the sample project’s game, the main player character has to work with
NPCs to accomplish mission objectives. The main player can radio the
NPCs, who in this case are two on-duty police officers. Through their
radio responses, the two officers report back with details of their current
assignment and status. For example, the officers can report that they
are rescuing a hostage, then later report on whether their rescue was
successful.
25
Project Details
The selected argument path and its associated object are displayed.
4. In the Transport Control, click Play to hear the object.
Dynamic dialogue is a flexible tool for creating responses on the fly. These
responses are determined through a decision-tree structure that selects
audio based on multiple game conditions. The example of dynamic
dialogue provided with the sample project shows how to implement
dialogue functionality in a game that uses game variables to trigger the
particular sentences. Dynamic Dialogue is particularly well suited to create
play-by-play for sports games, but any game genres could see advantages
to use this system. It can also be used for SFX in situations where large
hierarchies are needed like footsteps structures for example.
26
Project Details
In this game, each time a police officer responds to the player, the game
triggers the “Objective_Status” Dialogue Event while setting the actual
argument values. Consequently, the object associated with the argument
path, either a voice object or a container holding sound objects, is heard.
This example doesn’t take advantage of the Probability and Weighting
tools, but you can use them in your game to have more control over which
piece of audio is played, if any.
Fallback Mechanism
When you create dynamic dialogue for a game, you may realize that your
game can’t always provide all the information you need at all times. In
this example, when the player radios an officer for his status, the officer
NPC might be between actions. To deal with this possibility, the dynamic
dialogue system includes a fallback mechanism. The fallback mechanism
allows you to trigger generic dialogue for situations where an argument
path does not have an associated object, or when an argument value in the
argument path is not specified by the game.
For example, the sample project contains the following fallback lines:
• Unit_B.*.Completed: “Mission accomplished. Nice job everyone.”
27
Project Details
Note
When an argument is used to create a fallback argument path,
the argument is represented by an asterisk in the path name.
In the example above, the asterisk represents the argument:
“Objective”.
Example: Ambisonics
The Ambisonics Work Unit in the Actor-Mixer Hierarchy includes three
examples of moving ambient sounds to demonstrate the spatial audio you
can expect with ambisonics output. The multichannel setup necessary
to do ambisonics justice (you must at least have some height channels)
is not a commonly available Sound Engine Audio System. Consequently,
these examples are routed to an “Ambisonics” Audio Bus and its parent
“Binauralizer” Audio Bus, which uses the Auro Headphone Effect to
generate binaural output. Listening to this with just a pair of headphones
will faithfully render the spherical directional power of ambisonics
according to the selected Channel Configuration, which could be set to
first, second, or third order ambisonics.
Note
Feel free to open the Effect Editor and tweak the Auro
Headphone settings to optimize your personal experience.
In practice, your perceived output will vary according to the
content.
28
Project Details
3. With one of the examples loaded in the Transport Control, press play.
Note the differences between the different orders of ambisonic channel
configuration outputs.
Tip
Regardless of what you select in the Project Explorer, you can
keep the same sound object loaded in the Transport Control
by pinning it. Just click the Pin icon found in the upper right
corner of the view to the left of the Help icon.
As with the other ambisonic examples, users can adjust the “Binauralizer”
Audio Bus to listen to the differences in precision when it's set to a second
or third order channel configuration. However, with a first order source
file, the output will be the same.
29
Project Details
You may wish to play with the User-defined path to help you better
appreciate the differences in precision.
You should play the “Ex 2 - Helico Passby Overhead” Sound FX in the
Transport Control using different ambisonic channel configurations. The
higher order ambisonics configurations deliver more precise sound than
the lower order ones.
Tip
Like the other examples, the channel configurations can be adjusted and
played back in the Transport Control to hear how well different orders
of ambisonic output produce an encompassing spatial audio. Because
there are many other sounds to output to the higher order channels, you
30
Project Details
See more about using the Wwise Recorder in the Wwise Plug-ins section of
the help.
Example: Music
The Music Work Unit in the Interactive Music Hierarchy includes two
examples of game music to demonstrate both a basic and an advanced
integration of interactive music. These interactive music examples show
how you can create music that evolves through three distinct States
representing the level of intensity of the gameplay:
• Stealth: No threat in sight. The player moves quietly through the
environment.
• Stress: The player is in danger and should hide or escape to avoid
trouble.
• Fight: Action sequence where the player is attacked by bad guys and
fights for his life.
31
Project Details
The interactive music view allows you to examine game music at different
levels of detail. The following procedure should show you how to take
advantage of Wwise’s interface when looking at one particular project
element.
Note
2. In the Music Segment editor, hold “Z” while clicking in the Music
Segment Editor track view to zoom out and see the four tracks.
32
Project Details
33
Project Details
34
Project Details
• Stingers: Stingers are brief musical phrases that are superimposed and
mixed over the currently playing music.
• Bonus Stinger: The “Bonus” stinger uses the segment “Stinger
Bonus” for all objects except for the Fight music container, which
uses the segment “Stinger Bonus - Fight”. “Stinger Bonus - Fight” has
three subtracks set to play in sequence. This ensures that you hear a
different music punch each time the Bonus stinger is triggered in the
Fight state.
• Backup Team Arrives: The “Backup Team Arrives” theme has
been composed to play over the Fight music only. It uses the music
segment “Stinger Backup Team”, which has been routed to a control
bus that auto-ducks the “00_Fight” bus by -10 dB.
• Additional Transition Segments: The transitions found in the “02_In-
Game Music” music Switch Container manage the transitions between
the in-game music and the menu music. There is also a custom
transition between Fight and Menu music that uses the dedicated
transition segment "Fight to Menu Transition".
• Transition from Fight to “Nothing”: This transition uses a transition
segment named “Death”. In this case, the “Nothing” state occurs at the
main character’s death.
• Stealth to Stress Transition: The transitions between Stealth and Stress
have been enhanced by adding rules to the Transition Matrix to get
more interesting results. For example, if segment “Stealth_Seg_02”
is playing when a transition to the Stress state occurs, the specific
destination segment will be “Stress_Seg_02” instead of the first segment
of the Playlist as the default behavior proposes. Six rules have been
defined to cover all possible transitions between the three Stealth
segments and the three Stress segments.
35
Project Details
Music Structure
The music has been composed with a fictional puzzle game in mind
comprised of five musical states:
• "Neutral", "Rising" and "Falling" are the main themes that follows the
player's progression during a puzzle.
• "Victory" is only heard after "Rising" when the player successfully
complete the puzzle.
• "Defeat" is only heard after "Falling" when the player failed the puzzle.
This graph shows the game states and gives an overview of the music
structure and transitions between states.
36
Project Details
You can listen to the various states by using the Soundcaster session
"MIDI". Start by playing the "Start_MIDI_Music" Event in the Soundcaster
session, and then trigger the other Events in this session to change from
state to state.
37
Project Details
The MIDI music uses pre-rendered music and MIDI tracks targeting
sampled instruments and a soft synthesizer. Taking "Neutral Loop" music
segment as an example, you'll see the following:
• Track 1 "Audio Mix - No MIDI" uses a pre-rendered audio files.
• Tracks 2 to 6 are using MIDI files that each target a different sampled
instrument located in the Actor-Mixer Hierarchy.
• Track 7 "Synth" is also using a MIDI file, but targets a Sound that uses
the Wwise Synth One source synthesizer instead of sampled sounds.
38
Project Details
Take a look at the Wwise Help for more details on how to create sampled
instruments and MIDI tracks in Wwise.
Factory Assets
It is possible to import additional "factory" content in Wwise using the
"Import Factory Assets..." option found in the "Project" menu in Wwise.
Altiverb and Convolution Reverb are Effect assets while Crankcase REV,
SoundSeed Air and Synth One are source plug-in assets.
39
Chapter 3. Need Help?
Using Help ............................................................................................... 41
Further Resources .................................................................................... 41
40
Need Help?
Using Help
Wwise Help contains detailed information on each interface element in
Wwise.
Further Resources
This sample project gives an overview of how typical audio structure for
game can be built in Wwise. If you want to learn more about Wwise, we
suggest you take a look at the following resources
• Cube Project - Also available from the Wwise Launcher, Cube is a
first person shooter game. Although the game is old and not so great
looking, the interest comes from the fact that it contains a few sound
Events that can be easily customized. Real-time mixing and profiling
is also easily achieved which makes it pretty close to the workflow of
working on a game production.
• Video Tutorials - Video tutorial are available for all users in the
community section of our website. They are also available on
AudiokineticWwise's YouTube channel.
• Wwise Certification - The Wwise Certification online courses offer
several programs for learning Wwise fundamentals and advanced
specialized topics.
Note
Materials sent by content providers were all originally high
quality (48 kHz, 16 or 24 bits). However, to save download time
and disk space, we have reduced the size of some of the sound
assets.
41