Wwise-101 Certification Course 7 Lessons, 7 Quizzes, 1 Exam

Size: px
Start display at page:

Download "Wwise-101 Certification Course 7 Lessons, 7 Quizzes, 1 Exam"

Transcription

1 Wwise-101 Certification Course 7 Lessons, 7 Quizzes, 1 Exam

2 Wwise-101 Certification Course Wwise-101 Certification Course 7 Lessons, 7 Quizzes, 1 Exam Our seven lessons cover all you need to get your Wwise-101 certification. We re also providing you with seven quizzes to test your knowledge prior to taking the exam. Although these quizzes are optional, we highly recommend that you complete them so that you are well prepared. Best of luck from the Audiokinetic team! Additional Resources: Community Q&A Knowledge Base Video Tutorials The Audiokinetic Blog Wwise Tour Videos Facebook Group: Wwise Wwizards & Wwitches (Please note that we are not affiliated with the private Facebook group Wwise Wwizards & Wwitches, and that it is entirely community managed.) Copyright 2017 Audiokinetic Inc. and Conservatory of Recording Arts & Sciences. All rights reserved. Legal Notice The Wwise Certification Course documentation (whether in written, graphic or video form) is supplied as a guide for the Wwise product and is made available free of charge to all users of the Wwise Certification Website. This documentation is the sole joint property of Audiokinetic Inc. ( Audiokinetic ) and the Conservatory of Recording Arts & Sciences ( CRAS, and together we or us ), 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. You may compile different extracts of the documentation to suit such internal purposes, but you may not alter the content of any portion of the documentation. Any copy of the Wwise Certification Course documentation shall retain all copyright and other proprietary notices contained therein. The foregoing does not extend to the documentation regarding the Audiokinetic Wwise Technology, which is the sole property of Audiokinetic. Please refer to the copyright notices included in same. The content of the Wwise Certification Course 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 Wwise Certification Course 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. 2

3 Table of Contents Installation of Wwise... 1 Installing Wwise and Preparing Lesson Content... 3 Installing the Wwise-101 Course Materials... 4 Playing Cube... 9 Silencing Cube Lessons Lesson 1: Quick Start From Silence to Sound Launch Wwise Profiling the Game Creating an Event Importing a Sound Applying an Action Integrating Sound Into the Game Play the Game! Lesson 2: Designing a Soundscape Adding Sounds to a Project Using a Single Sound For Multiple Applications Changing Object Parameters Using the Source Editor Applying Multiple Actions to a Single Event Using Randomization Granulate Your Sounds Verifying Your Work Lesson 3: Understanding Game Syncs Using Switches Using Game Parameters Using States Integrating Your Game Syncs Into Cube Viewing Game Syncs in the Profiler Lesson 4: Creating Space Using 3D Game Defined Understanding 3D User Defined Using 2D Panning Play the Game Lesson 5: Understanding Audio Signal Flow Organizing with Actor-Mixers Using the Master Mixer Hierarchy Working with Effects Using the Schematic View Lesson 6: Finalizing the Mix Using Soundcaster Configuring a Mixing Desk iii

4 Wwise-101 Certification Course Using Control Surfaces... Lesson 7: Optimizing Your Game... Managing Memory... Processor Optimization... Real-time Monitoring with Profiler... iv

5 Installation of Wwise

6 Installing Wwise and Preparing Lesson Content... 3 Installing the Wwise-101 Course Materials... 4 Playing Cube... 9 Silencing Cube

7 Installing Wwise and Preparing Lesson Content Installing the Wwise-101 Course Materials... 4 Playing Cube... 9 Silencing Cube

8 Installing Wwise and Preparing Lesson Content Congratulations! You re about to embark on a journey where you ll learn the art and science of integrating sound into video games by using Wwise, the most powerful game audio integration tool and sound engine available. Powerful and flexible tools like Wwise can oftentimes feel a bit daunting at first, but simply follow the step by step approach in this and the following lessons, and you ll quickly become comfortable using Wwise. You ll learn Wwise by integrating sound into an actual game called Cube. Cube is a first person shooter game where you ll save the world from bad guys while enjoying the knowledge that you are the one responsible for creating the soundscape that makes the game come to life! Installing the Wwise-101 Course Materials Your first step is to install the various resources you'll need to complete the Wwise-101 course. This includes the Wwise authoring application, the Cube demo game and the lesson folders which contain custom Wwise projects and audio files needed for this course. Installing Wwise 1. If you have not already installed the Wwise Launcher, proceed to the Wwise downloads page at If you already have the Wwise Launcher, then skip down to step Select either the Windows or Mac operating system options as appropriate for your system and then click the Download Wwise launcher button. 3. Navigate to the downloaded file on your computer and run the WwiseLauncher installer and follow through with the installation steps. When the installation is complete, the Wwise Launcher will open automatically and you ll be prompted to sign in. 4

9 Installing Wwise and Preparing Lesson Content If you already have an Audiokinetic user account, you can choose to sign in. 4. The Wwise Launcher is displayed. Note Specific version numbers have been blurred in the installation screenshots because the available version of Wwise differs depending on when you downloaded it. The version of Wwise that you use does not impact the Wwise-101 course as long as it is more recent than Wwise The Wwise Launcher provides a home page as a way to stay up to date on what s happening in the Wwise community, as well as an option to launch the Wwise authoring application. If you ve never installed Wwise before, you are prompted to get started by installing Wwise. 5. In the Wwise Launcher, click the Install Wwise xxxx.x.x.xxxx button. A window appears asking you to select which Packages and Deployment Platforms you d like to install. 5

10 Installing Wwise and Preparing Lesson Content In the Samples area, you ll need to include the Cube game, which is the basis for the all of the lessons in the course. Note You ll see the Deployment Platforms area with none of the options selected. Although selecting a deployment platform is not required for this course, you may wish to install additional deployment platforms for your own future projects. 6. Expand the Samples area and choose Cube (Demo), then click Install. 6

11 Installing Wwise and Preparing Lesson Content At this point the installer takes you through the installation process and will download the necessary files as you ve indicated. You will likely be asked to supply an administrative username and passwords during the process. 7. Continue with the installation process and confirm installation as prompted. When the installation is complete you will see that the new version is installed with a button that will let you launch the version you just installed. (If you have Unity or Unreal installed, you will also see an option to add Wwise to those projects; but, you can ignore that for now.) Now that Wwise is installed you may leave the Wwise Launcher open as you move to the next exercise where you ll download and install the Wwise-101 Course Project files. Installing the Wwise-101 Course Project Files With the latest version of Wwise installed, you re now ready to download and install the project files and audio assets you ll use with the Wwise-101 Certification course. 1. Download the Wwise-101.zip file at download/lessons/wwise-101_v zip 7

12 Installing Wwise and Preparing Lesson Content You need to extract the downloaded ZIP file to the Cube folder found within the Wwise application folder you just installed in the last exercise. The default locations for the Cube folder are: On Windows: Program Files (x86)/ Audiokinetic/Wwise 2016.x.x.xxxx/Cube On Mac: Applications/Wwise 2016.x.x.xxxx /Cube 2. Extract Wwise-101.zip and move the new Wwise-101 folder to the Cube folder within the Wwise xxxx.x.x.xxxx folder. 3. Open the Wwise-101 folder to reveal its contents. Within the Wwise-101 folder you ll see a folder that contains resources for each of the lessons you ll be working through. 8

13 Installing Wwise and Preparing Lesson Content Playing Cube The game you ll use throughout this tutorial is Cube, an open source first person shooter where your mission is to get the monsters before they get you. You'll now launch a version of Cube that has a distinct difference from versions of Cube you might find on the Internet. This version of the game has a unique ability to communicate details about what s happening in the game with the Wwise software as the game is being played. This gives you incredibly valuable information, as you ll learn in Lesson 1. In each of the subsequent lessons, you ll be asked to run Cube so that you can hear how the sound design you ve integrated impacts the game. Each time you re asked to run Cube, you ll need to perform the following steps. 1. Return to the Wwise Launcher application, select the Samples tab and click the Run Cube button. As the Cube game launches, you may get a notification indicating the Windows Firewall has blocked some features of the program. This is because this version of Cube uses a network connection to speak to Wwise as you ll learn in Lesson 1: Quick Start From Silence to Sound. It s important that this capability is not blocked by Windows. 2. If you get a Windows Security Alert window, click Allow Access. 9

14 Installing Wwise and Preparing Lesson Content The game opens. Each time you run the game, you ll begin in an empty level, which provides you with an opportunity to run around and explore your sound design without having to worry about the bad guys finding you. 10

15 Installing Wwise and Preparing Lesson Content The game uses a standard FPS keyboard controls. For this tutorial, the main controls you need to familiarize yourself with are: W = Move Forward S = Move Backward A = Strafe Left D= Strafe Right Spacebar = Jump Left-Click = Fire 3. Briefly play the game and be sure to fire the shotgun. As you move, you'll hear footsteps that change based on the surface you're walking on. When you fire the shotgun, you'll hear its blast as well as the sound of shotgun shells falling to the ground with a different audible pattern each time they're played. This sonic feedback makes the game much more gratifying than if there were only silence. In the subsequent exercises, you ll discover the basic principles of how these sounds and many other sounds are integrated into a Cube using the Wwise sound engine. Tip In Windows, press Alt-Tab to jump back to the Windows desktop or the Wwise program. Once you re done familiarizing yourself with Cube, you ll need to exit the game. 4. Press Escape and use the up and down arrows to select quit and then press enter. 11

16 Installing Wwise and Preparing Lesson Content Silencing Cube The purpose of the Wwise-101 course is to be able to see the entire process of taking a game from silence to fully implemented sound. To fully understand this process you need to remove the sound implementation that is part of the Cube demo installation. As you'll learn in the first lesson, all of the sounds implemented into the game are found within a soundbanks folder referenced by the game. Within the soundbanks folder there is a folder that is specific to your platform, Mac or Windows. To eliminate all of the pre-existing sound integration, you need to remove all of the contents within your platform's folder. The path to these folders differs slightly for Windows and Mac. 1. In Windows, navigate to Program Files (x86)/audiokinetic/ Wwise 2016.x.x.xxxx/Cube/cube. On Mac, navigate to Applications/Audiokinetic/Wwise 2016.x.x.xxxx/Cube/ cube. 12

17 Installing Wwise and Preparing Lesson Content The folder for your platform contains the various audio resources referenced by the game. Removing these files will remove the sound integration, yet still allow all other aspects of the game to work normally. 2. Depending on your platform, delete all of the contents found within the Windows or Mac folder. With the content of your platform's soundbank folder removed, the game will play without any audio. 3. Run Cube once again from the Wwise Launcher and confirm that the sounds are no longer audible. That's it! As you explore Wwise, leave this profile edition of Cube running in the background because you will be moving between it and the Wwise application throughout the next lesson. You re now ready to move to Lesson 1: Quick Start From Silence to Sound, where you ll very quickly take a video game from silence to sound! 13

18 Lessons

19 Lesson 1: Quick Start From Silence to Sound Launch Wwise Profiling the Game Creating an Event Importing a Sound Applying an Action Integrating Sound Into the Game Play the Game! Lesson 2: Designing a Soundscape Adding Sounds to a Project Using a Single Sound For Multiple Applications Changing Object Parameters Using the Source Editor Applying Multiple Actions to a Single Event Using Randomization Granulate Your Sounds Verifying Your Work Lesson 3: Understanding Game Syncs Using Switches Using Game Parameters Using States Integrating Your Game Syncs Into Cube Viewing Game Syncs in the Profiler Lesson 4: Creating Space Using 3D Game Defined Understanding 3D User Defined Using 2D Panning Play the Game Lesson 5: Understanding Audio Signal Flow Organizing with Actor-Mixers Using the Master Mixer Hierarchy Working with Effects Using the Schematic View Lesson 6: Finalizing the Mix Using Soundcaster Configuring a Mixing Desk Using Control Surfaces Lesson 7: Optimizing Your Game Managing Memory Processor Optimization Real-time Monitoring with Profiler

20 Lesson 1: Quick Start From Silence to Sound Launch Wwise... Profiling the Game... Creating an Event... Importing a Sound... Applying an Action... Integrating Sound Into the Game... Play the Game!

21 Lesson 1: Quick Start From Silence to Sound In the Installation of Wwise you installed and briefly played Cube, the game you ll use throughout this tutorial. At this point, Cube is a silent game and that s not very exciting. You ll soon fix this! By the end of this lesson you ll bring the game to a point where one of the games most noticeable visual animations, the firing of a shotgun, is supported by a shotgun blast sound. Launch Wwise You ll begin by creating a new Wwise project. Wwise projects are not a single file, but a folder with a number of sub folders that collectively contain the various resource files needed to carry out the instructions of how you ve integrated sound into a game. 1. From the Wwise Launcher application, go to the Wwise tab and launch the Wwise application. The Wwise Project Launcher opens and all available Wwise projects are displayed. The number of projects you see here will vary depending on what other projects you may have opened on your computer. Most likely you see nothing in this area at this point. In this case it makes no difference because you are going to be creating a completely new project for this lesson. 2. In the lower left corner of the Project Launcher, click New. 17

22 Lesson 1: Quick Start From Silence to Sound A dialog window opens asking what you want to call your new project and indicates where the project folder is located. The Original files field indicates where the audio asset files you ll import in this later lessons will be stored. Other optional preset examples within Wwise also use supporting files which are indicated in the lower box with the check marks. It s OK to leave these selected. 3. In the Name field, type Wwise Project Lesson 1. Click the [ ] button to the right of the location field, navigate to your Wwise-101 folder and select the Lesson 1 folder. 18

23 Lesson 1: Quick Start From Silence to Sound Note Mac users: Upon selection, the path in the Location field will be displayed as Y:\Documents\WwiseProject\Wwise Lessons\Lesson 1\. The Y: path designation occurs because Wwise for Mac runs within a PC emulator and it uses this letter as a drive designation. 4. In the Platforms panel, click Add... The Add Platform dialog pops up. Select Mac as your Base Platform. Click OK in the Add Platform dialog, then again in the New Project dialog. 19

24 Lesson 1: Quick Start From Silence to Sound 5. There s a brief pause while Wwise builds your new project folder. When complete, the Wwise License Manager window opens and explains that Wwise is running in its trial version. The trial version of Wwise is identical to the fully licensed version with the exception that there is a maximum of 200 media items across all SoundBanks. For more information on the fully licensed version, please visit the frequently asked questions page on licensing here: You ll learn more about SoundBanks later in this lesson, but be assured that the material provided with the trial version is more than sufficient for you to gain an understanding of Wwise. 20

25 Lesson 1: Quick Start From Silence to Sound 6. In the License Manager window, click Close. You now see the Wwise software interface. Depending on your screen size and resolution, it may look slightly different, but across the top you ll see a main menu bar, with toolbars below. These are static and will always be visible. Below you ll see multiple areas called views. Each view provides functionality that can be used to visualize and manipulate how sound is integrated into your game. There are around forty different views available within Wwise. This may seem a bit overwhelming, 21

26 Lesson 1: Quick Start From Silence to Sound but it is not imperative that you know what all of these views do to make Wwise work for you. In fact, rarely will any one person use all of these views as Wwise is used by teams of people, many of which have specific jobs that only require them to use specific sections of Wwise. Profiling the Game To integrate sound into Cube, you need to first evaluate the kind of information that is being sent from the game to Wwise. To do this you ll need to run the special profiler version of Cube that you tested in the Installation chapter. 1. Launch the Cube game. Note If you re not sure how to launch Cube, review the Playing Cube exercise at the end of the Installation chapter written for your computer s operating system. You ll need to now return to Wwise. In fact you ll be switching back and forth between the game and Wwise quite often throughout this tutorial, so you ll want to become familiar with using Alt+Tab on Windows, or Command+Tab on a Mac to switch between programs. 2. Press Alt+Tab on Windows or Command+Tab on Mac to return to Wwise. There are a number of views that work together to show you information related to reviewing information being received from the game, but rather than opening them one at a time you can quickly open them in one step using a layout. A layout is a predefined collection of views that are commonly used together. 3. In the main menu click Layouts and choose Profiler or press F6. 22

27 Lesson 1: Quick Start From Silence to Sound The Profiler layout is displayed. You can use the views in this layout to evaluate information about messages generated in the game and monitor details about sound engine performance. You re going to use the Capture Log view in the upper left to display information that is being generated in game. To access this information, you need to connect Wwise to the Cube game that you should still have running in the background. 4. In the toolbar, click Remote. 23

28 Lesson 1: Quick Start From Silence to Sound The Remote Connections window opens displaying computers on the network (including your own local computer) that are running a version of the game that uses the Wwise Sound Engine and are designed to communicate with Wwise. 5. Select your computer from the list and click Connect. The window closes and because the Start capture on connect check box was selected, you ll see the capture button in the toolbar turn red, while a counter ticks next to it. Capturing is the process of recording, in real-time, a log of any information coming from the Wwise Sound Engine in your game related to the game play, an invaluable asset as you develop the sound for your game. 24

29 Lesson 1: Quick Start From Silence to Sound 6. Return to the Cube game and fire the shotgun one time. 7. Go back to Wwise to view the Capture Log. In the Capture Log view you ll see a few lines of information, confirming that Cube transmitted information to Wwise when you fired the shotgun. When connected to a game, some Wwise parameters cannot be adjusted. So, once you have the desired Capture Log information, you should disconnect from the game. 8. Click Disconnect. The capture process stops and Wwise disconnects from the game. You can now evaluate what just happened. The information displayed represents errors that were generated because Wwise does not know what to do with the messages it has received. These message are generically referred to as game calls and there are a variety of different types of calls that may be triggered. You ll learn more about the different types of calls later, but for now you need to take a closer look at the error description. 25

30 Lesson 1: Quick Start From Silence to Sound 9. Drag the right side of the Description column header to the right so you can view the entire error message. The messages in the description area refer to something called Events. Events are a type of Wwise Game Call that the game engine sends to the Wwise audio engine, indicating that something has occurred in the game. Usually when an event is transmitted to Wwise, it s used to trigger a sound, to modify one of its properties, or even to stop the sound from playing. Events are given names to identify what the event is being used for. In this case the Fire_shotgun_Player event name that s being referenced makes it clear that it is associated with the act of the player firing their shotgun. Also notice that there is a Game Object column that specifies Local Player. This identifies which entity in the game the message is associated with. For example, there may be multiple characters in the game that carry a shotgun, so the game engine needs to know which character fired the shot to appropriately play the sound. For example, if the monster that just fired a shotgun appears to be 50 meters away, then the sound probably shouldn t be played at the same volume as when our hero fires his shotgun. This will be explored in greater detail in Lesson 4: Creating Space. For now, the problem is that Wwise is saying that it has no idea what to do with this event, but you re about to change that! Creating an Event For everything that happens in the game that may need an audio response, a programmer has added lines of code to transmit a message informing Wwise about what has occurred. This message is referred to as a game call. Game Calls are just simple messages that say things like Hey, the shotgun was fired, but in reality this message is sent as a string of text or numbers. When this message is received by the audio engine, any number of things can happen as defined by you, the game audio designer. The first thing that you need to do is to create an Event, so that Wwise can catch an incoming Game Call. Think of it like a game of catch between the game engine and the audio engine. The ball being thrown from the game engine is the Game Call, while an Event is a type of object within Wwise designed specifically 26

31 Lesson 1: Quick Start From Silence to Sound to catch Game Calls. The important thing to note is that each Game Call needs an identically named Event to be received by Wwise. 1. From the main menu select Layout > Designer or press F5. 2. In the Project Explorer view, click the Events tab. It s in the Events tab where you re going to allow Wwise to understand the incoming Event Game Calls that Wwise should expect to see transmitted from the game engine. Within the Project Explorer s Events tab you see a folder titled Events and within that folder there is an object called Default Work Unit. Work Units serve as the foundation for Wwise. Work Units contain information related to a particular section or element within your project and help you organize your project. 27

32 Lesson 1: Quick Start From Silence to Sound In many games, many people or even companies are concurrently working on different parts of a game. For example, one team may be working on all of the weapon sounds, while another focuses on ambient sounds. In this scenario, each team could have its own copy of Wwise and create their own unique Work Unit that houses their assigned Events. Later in the production, multiple Work Units can be brought into a single project in order to bring all of the elements in a game together. Note Work Units are actually XML files created within the project structure of Wwise. Anything you create in Wwise is referred to as an object. Be careful not to confuse this with the Game Object term discussed earlier in this lesson which relates to items within the game. Objects in the Wwise interface are represented by small square icons. There are over 20 types of objects, each providing unique functionality for how you can create and control sound within Wwise. Objects exist within a hierarchy and typically work units are at the top of this hierarchy. Like the bricks that make up a building, these objects are building blocks that can be used for purely practical applications, or they can be arranged in intricate and creative ways. For now, you re going to create a single Event object within the Default Work Unit that will serve 28

33 Lesson 1: Quick Start From Silence to Sound as a glove that will be used to catch the shotgun Game Call that is being transmitted from the Cube game engine. 3. Click the Default Work Unit within the Events folder. When an object is selected, an icon bar is displayed in the Project Explorer that shows which other types of objects can be housed within the selected object. When you hover over the icon, a tooltip indicates the type of object represented by the icon. 4. Hover over the fourth icon to identify it as an Event object. 5. Click the Event icon to create a new Event Object within the Default Work Unit. A new event object is created and you are prompted to type its name. 29

34 Lesson 1: Quick Start From Silence to Sound How you name an Event object is critical. It is imperative that the name of the Event object perfectly matches that name of the game call being transmitted from the game engine. Just like dialing a phone number, if you re off at all, it won t connect. To ensure that this works well, typically the sound designer decides what kinds of things the sound engine needs to be aware of, and creates the Events for each of these things in Wwise. The sound designer then informs the programmer of the Event names so that they can program the game engine to transmit game calls with the same name. In our scenario, the game engine for Cube has already been programmed, and the names for the calls have already been defined, and Fire_Shotgun_Player is the name for the call used each time a shotgun is fired. 6. Type Fire_Shotgun_Player and press Enter. Note Wwise will later create software code based on your project. In that code, all object name references are handled in lower case, therefore object names are not case sensitive. Tip Selecting an object reveals its associated properties in the Event Editor to the right which you can confirm by the Fire_Shotgun_Player - Event Editor in the view's title bar. Different objects have editors of varying complexity. Most have a Notes field that is incredibly important because you can add extra information to avoid any confusion about the 30

35 Lesson 1: Quick Start From Silence to Sound Event name. With a name like Fire_Shotgun_Player, the Event likely relates to the shotgun being fired, but not all Events are intuitively named. Notes provide a way to provide more information to help you and others who might be reviewing your work better understand what you ve created. Importing a Sound Now that you have an Event setup to catch the incoming shotgun Game Call, you need to bring in the sound that you want to hear when that event is received. Wwise can create sounds in a variety of ways, including synthesizing sounds from scratch; however, the most common way to generate a sound is to use a recorded audio file. There s no need to go out and record a shotgun as an audio file of a shotgun blast is already provided. You simply need to bring it into your project. Sounds are usually managed within the Audio tab of the Project Explorer which is found in the Designer layout. 1. In the Project Explorer view, select the Audio tab. The Audio tab of the Designer layout is where you ll spend most of your time when designing your game s soundscape. The audio tab has three different hierarchies that each provide unique objects to accomplish various tasks related to triggering or manipulating how audio works in Wwise. With the exception of music, you ll keep your sounds within a Work Unit within the Actor-Mixer Hierarchy. There are many different objects that can be created within the Actor-Mixer Hierarchy that you ll explore over the next several lessons; however, if you simply want to play a given audio file, this is accomplished via the Sound SFX (Sound Effects) object. Note It is also possible to play sounds through Sound Voice objects; however, they are generally used for spoken dialogue as they have specific localization features used when releasing a game in multiple languages. 2. In the available object row, click the Sound SFX icon. 31

36 Lesson 1: Quick Start From Silence to Sound 3. Name the Sound SFX Object Shotgun_Blast. The object name appears in red. 32

37 Lesson 1: Quick Start From Silence to Sound The red lettering represents that there isn t an audio file associated with this SFX object. You ll need to add the audio file in just a moment, but before you go any further it s important to understand that an SFX object does not directly represent an audio file. It instead represents the channel that the audio file will play through. You can equate it to the idea of a channel on a digital audio workstation. The channel has various controls that manipulate the actual audio files that are stored on the audio track that feeds through the channel. Once you understand this, you re ready to add the audio file to the Sound SFX object. Right-clicking an object provides many different options related to what can be done with that object, including importing an audio file to a Sound SFX object. 4. Right-click the Shotgun_Blast SFX Object and choose Import Audio Files. 33

38 Lesson 1: Quick Start From Silence to Sound 5. Click Add Files A dialog box opens prompting you to select the file you want to import. The file you re going to import is a WAV file. Wave files are relatively large and you may well think that you d first want to convert the file to something like an MP3 file or even reduce its sample rate or bit depth to reduce the amount of information you are bringing in. This is not the case. Actually, you want to import your best quality original into Wwise as a Wave file and don t worry about the size at this time. The beauty of Wwise is that you can 34

39 Lesson 1: Quick Start From Silence to Sound later decide how you want to optimize the file s size before integrating into the game. In fact, Wwise has extensive features related to this which you ll explore in Lesson 7. Think of it like a photographer wanting to always keep his 25 megapixel original and only worry about how to crop or compress the image based upon the need at the time he needs to send someone the image. 6. Navigate to Wwise-101/Lesson 1/Audio files for Lesson 1/, choose the Shotgun_Blast file and click Open. The Audio File Importer opens confirming which audio file you want to import to the SFX object. 7. Click Import. The Audio File Importer window closes and you now see that Shotgun Blast SFX object has turned blue. 35

40 Lesson 1: Quick Start From Silence to Sound The blue color indicates that an audio source, in this case a WAV file, is properly associated with the SFX object and that the audio file is currently being referenced in its original imported format. Note As you work, you may notice some Sound SFX objects names are blue while others are white. The color communicates if the associated file has been optimized through a conversion process which usually happens when you generate a SoundBank which you ll do later in this lesson. White object names indicate that the conversion has already taken place, where blue objects have yet to be converted. At this point, don t worry if you see the color change from blue to white. You ll learn more about optimization and the conversion process in Lesson 7. Now it s time to test your sound and make sure it s playing through your system. 8. Click the Shotgun_Blast Sound SFX object to make sure it s selected. 36

41 Lesson 1: Quick Start From Silence to Sound Notice that the Property Editor view displays audio controls for the Shotgun_Blast such as a volume fader. Also, look in the Transport Control view and you ll see the name Shotgun_Blast. This indicates that when you press the play button, you ll hear the sound as it s going to be played in the game. Tip The spacebar is the keyboard shortcut for the play button. 9. In the Transport Control view, click the play icon or press the spacebar. You should hear the shotgun blast sound. You ll also notice that there s a meter in the toolbar as well as a meter view on the right side of the layout showing you the level of playback. 37

42 Lesson 1: Quick Start From Silence to Sound Applying an Action Earlier you created the event object that catches the game call transmitted from the game engine, and you ve just created the Sound SFX object that contains the audio file you want to hear when that event is received. Now you are ready to connect these two objects together. This is accomplished via Actions that are created in a selected Event s Event Editor. Earlier you worked with the Event Editor when you created the Fire_Shotgun_Player event within the Events tab of the Project Explorer. Although not currently in the Events tab, you may have noticed the Event Viewer view in the lower left corner is displaying the Fire_Shotgun_Player event you created earlier. There you see your Fire_Shotgun_Player event is indicating that it is missing associated actions and therefore isn t doing anyone any good. 1. Click the Fire_Shotgun_Player [Missing] Event in the Event Viewer. 38

43 Lesson 1: Quick Start From Silence to Sound The Fire_Shotgun_Player Event Editor is displayed containing an empty list with an empty row 1. This is where you indicate what Action you want to have happen when Wwise receives the Fire_Shotgun_Player event from the game engine. 2. Click the selector menu button [>>]on the first row. A list of possible actions is displayed. As you can see, there are a lot of options, but all you need for now is the first option Play. 3. Select Play from the Action list. The play action is added, but the objects column indicates that the sound associated with this action is missing and play. 39

44 Lesson 1: Quick Start From Silence to Sound This is where you need to indicate that you want to play the Shotgun_Blast Sound SFX object that you created in the previous exercise. You can add this by simply dragging it from the Project Explorer to the first action in the action list. Tip To save a step you can drag an object to an empty line in an action list and it will automatically add a Play action. You ve now connected the Fire_Shotgun_Player Event to the Shotgun_Blast SFX Object. Wwise lets you simulate what will happen in the game by allowing you to play not just Sound SFX objects, but also the Events themselves. Playing the Fire_Shotgun_Player event should trigger the shotgun blast sound. Before you can do this, you need to make sure that the Fire_Shotgun_Player Event is visible in the Transport Control view. 4. Look at the title bar of the Transport Control view and verify that it says Fire_Shotgun_Player. If it doesn t, click the Fire_Shotgun_Player event in the Event Viewer. 40

45 Lesson 1: Quick Start From Silence to Sound 5. In the Transport Control view, click the play button or press the spacebar. Bang! You should hear the shotgun blast, confirming that the Fire_Shotgun_Player Event is linked to the Shotgun_Blast sound you imported earlier. Integrating Sound Into the Game While playing the shotgun sound in Wwise is getting you closer to your goal, it s not complete until you can play the game and hear the result of your work. In many respects, this last step is like the process of bouncing a playable mix of a music project, with the exception that there is a lot more going on than simply generating a single audio file. This is where you get to see the real benefits of the Wwise sound engine, as it essentially writes the code necessary to apply your sound design to the game for you. 41

46 Lesson 1: Quick Start From Silence to Sound Adding an Event to a SoundBank SoundBanks are the collection of both the code and the audio assets used at the time the game is played, also known as run-time. Every game created by Wwise has at least one SoundBank and, in larger more complex games, there may be many SoundBanks. In this case, you ll create a single SoundBank and place it into the directory where the Cube game engine expects to find it. In order to achieve this, you ll use a different layout. 1. In the main menu, click Layouts > SoundBank or press F7. In the upper right area of the screen you can see the SoundBank Manager and, like other areas of Wwise, it contains a Default Work Unit. Cube has been coded to look for a SoundBank called Main, so you ll need to create that within this default work unit. 2. Click New. 42

47 Lesson 1: Quick Start From Silence to Sound The New SoundBank dialog box opens. 3. In the Name field, type Main and click OK. 4. Click the [+] symbol to the left of Default Work Unit. 43

48 Lesson 1: Quick Start From Silence to Sound SoundBanks need to be populated with the Events that you intend to have as part of that SoundBank. Events can be assigned to a SoundBank by simply dragging them to the desired SoundBank. 5. Drag the Fire_Shotgun_Player event from the Event Viewer to the Main SoundBank in the SoundBank Manager. In the lower right view, you ll see the Event you just added in the SoundBank Editor. 44

49 Lesson 1: Quick Start From Silence to Sound Generating a SoundBank (Mac). Generating a SoundBank Wwise can simultaneously generate SoundBanks for multiple game platforms and even multiple languages (if you ve provided dialogue content and used Wwise s localization features) in one swift step. This is a huge time saver considering that different game platforms have different ways in which audio code must be implemented. In essence, Wwise is like having multiple codewriters that know the specifics of each game platform working for you. Because of this, you need to specify which game system and language you want to author SoundBanks for. Note The specific steps you'll need to take in the following exercise will differ depending on if you are using a Windows or Mac computer. The images following each step reflect using the Windows platform. For Mac users, simply choose the available Mac option instead. Because multiple SoundBanks can be generated for a single game, you must first select the SoundBanks that you want to be generated. 1. Select the Main SoundBank, appropriate Platform and English (US) language check boxes are selected. 45

50 Lesson 1: Quick Start From Silence to Sound Next you must define the path indicating where the SoundBanks should be placed within the game s file structure. This information would typically be given to you by the game programmers. 2. In the SoundBank Manager, click User Settings. 3. Select the Override Project SoundBank Paths option, and then click the path selector button for your platform. 46

51 Lesson 1: Quick Start From Silence to Sound 4. Navigate to your Wwise Lessons folder, and then proceed to Cube\cube \soundbanks, choose the folder for your platform and click Select Folder. 47

52 Lesson 1: Quick Start From Silence to Sound The updated SoundBank path appears for the platform you selected. You now need to generate your SoundBank. Generating a SoundBank is the payoff of all of your work. It s much like bouncing a file in a conventional digital audio workstation. The result is what gives you and everyone else the ability to benefit from your work! 5. Click OK to close the SoundBanks Settings window then click Generate in the SoundBank Manager. The SoundBank Generation view is displayed. In this moment, the code and all necessary files to implement your shotgun sound have been generated. 48

53 Lesson 1: Quick Start From Silence to Sound 6. Click Close. You ll be generating a SoundBank at the end of Lessons 2 through 8. For those lessons, the path to SoundBank folder will already be set, so you ll only need to make sure that you check the appropriate SoundBank, platform and language check boxes. Play the Game! Now it s time to see the result of your work in the actual game. To hear the changes you ve made, you ll need to re-launch Cube, so you must first quit the currently running game. 1. Return to Cube, press the Esc key and then use the arrow keys on your keyboard to select quit, and press Enter. 49

54 Lesson 1: Quick Start From Silence to Sound 2. Open Cube once again. This time the game will open with the SoundBank you just generated. 3. Click to fire the shotgun. 50

55 Lesson 1: Quick Start From Silence to Sound You now hear the shotgun sound you implemented using Wwise! 51

56 Lesson 2: Designing a Soundscape Adding Sounds to a Project... Using a Single Sound For Multiple Applications... Changing Object Parameters... Using the Source Editor... Applying Multiple Actions to a Single Event... Using Randomization... Granulate Your Sounds... Verifying Your Work

57 Lesson 2: Designing a Soundscape Now that you ve attached a blast sound to the animation of your character firing a shotgun, you ll now look at other parts of the visual sequence that accompanies the sound and think about what else you can do to enhance that experience. As you work through the steps that need to be done, you ll also be looking at how to do as much as possible with as little as possible, for this is what defines a game audio designer's worth. This is because while modern game console systems have incredible power, that power is shared with systems that support graphics, physics, and artificial intelligence. Also consider that many games are played on mobile devices where system resources aren t as vast. Depending on the game s technical restraints, audio may be given a small budget with regards to memory and processor usage. Because of this, an audio game developer makes their mark by learning how to fuse great sound and creativity within the technical limitations provided. In many cases, it s the designer's creativity that provides unique and interesting solutions for working within technical constraints. Fortunately, Wwise provides a vast set of tools specifically designed to help you rise to this kind of challenge. Adding Sounds to a Project For this lesson you ll start by using a pre-saved project file that already has the shotgun blast sound Effect you used in the last lesson. 1. Launch Wwise and click Open Other at the bottom of the window of the Project Launcher. 53

58 Lesson 2: Designing a Soundscape 2. Navigate to your WwiseProjects > Lesson 2 folder. 54

59 Lesson 2: Designing a Soundscape A Wwise project is not a singular file, but instead a specific structure of many different folders and the files contained within. In most cases, you won t need to directly work with the content inside these folders as the necessary items will automatically be created and updated as you build a project. Projects are launched from a Wwise Project file which is located on the same level as these folders. 3. Select the Lesson 2 project file found within the Lesson 2 folder and click Open. 4. In the Actor-Mixer Hierarchy, expand the Default Work Unit to reveal the Shotgun_Blast Sound SFX object you created in the last lesson. 55

60 Lesson 2: Designing a Soundscape Instead of first creating the Sound SFX object and then adding a sound to it, you ll take a different approach by simply importing the audio files to the desired Work Unit, and let Wwise automatically create the necessary Sound SFX objects. 5. In the Actor-Mixer Hierarchy, select the Default Work Unit. Note You may see that the Shotgun Blast Sound SFX object appears in blue instead of white. Blue indicates that the audio file being referenced is the original imported file, while white designates that the file has been converted. Unless the object appears in red indicating a file is missing, the color difference does not change the operation of the exercises used throughout this tutorial. If you prefer, you can convert all of the audio files in your project at any time by going to the main menu bar and choosing Project > Convert All Audio Files. You ll learn more about Conversion Settings in Lesson In the main menu, choose Project > Import Audio Files or press Shift+I. Tip Using key commands for things you do on a regular basis will make you much more efficient as you work. Wwise displays 56

61 Lesson 2: Designing a Soundscape key commands for features found in the menus, so you should take the time to learn them. 7. In the Audio File Importer, click Add Files. An Explorer window opens where you can navigate to the file that you want to import. 8. Navigate to your Lesson 2 folder in Wwise-101. Open the Audio files for Lesson 2 folder, choose Shotgun_Pump and click Open. 57

62 Lesson 2: Designing a Soundscape The Audio File Importer window displays the current location. You ll also see an Object Type/Action pull down menu indicating that the imported file will automatically have a Sound SFX object created to contain it. 9. Click Import. The Shotgun_Pump Sound SFX object is displayed within the Actor-Mixer Hierarchy s Default Work Unit. 10.Click the Shotgun_Pump SFX object to view the Sound Property Editor with the parameters for the newly created object. 58

63 Lesson 2: Designing a Soundscape In the Contents Editor (under the Sound Property Editor), the Shotgun_Pump.wav file is shown as the source that feeds the Shotgun_Pump Sound SFX object. 11.To listen to your newly imported audio file, make sure that the Shotgun_Pump Sound SFX object is selected in the Project Explorer and then click the Play button in the Transport Control View, or press the spacebar. You hear a single mechanical click of a shotgun being pumped. 59

64 Lesson 2: Designing a Soundscape Using a Single Sound For Multiple Applications You may have noticed that when you watch the animation sequence of the player shooting the shotgun that there are actually two phases to pumping the shotgun. First, the character pumps the shotgun inward, which on a real shotgun ejects the empty shell and then pushes the pump forward which loads the next round into the chamber. Each of these movements makes a mechanical clicking noise; however, the audio file that you just imported does not contain two clicks. You could load a single recording of two pumps that is pre-timed to match the animation sequence, but that makes the audio file longer and therefore takes more memory when loaded into the game. Remember that preserving memory resources is something that you should always seek to achieve, so this might not be a good strategy. It s also common that the timing of animation sequences may change as the game s development progresses, so you ll take a different approach and use this single mechanical click for both the pump in and pump out sounds, using less memory and providing more timing flexibility. While you ll be using the same sound file, you re going to use two separate Sound SFX objects, one for pump in and on for pump out. 1. Right-click the Shotgun_Pump Sound SFX object and choose Copy. You now need to create a copy of the object within the same Work Unit. 2. Within the Actor-Mixer Hierarchy, right-click the Default Work Unit and choose Paste. 60

65 Lesson 2: Designing a Soundscape Wwise creates a duplicate of the Sound SFX object but adds an _01 extension. One of these Shotgun_Pump objects will serve to create the pump in sound, while the other will be the pump out so it s best to name them as such. 3. Click the Shotgun_Pump object, pause, and click again to rename it to Shotgun_Pump_In, and then press Return. Tip You can also rename an object by pressing the F2 key, rightclicking and choosing Rename or by directly entering into the Name field within the Property Editor. 4. Rename the Shotgun_Pump_01 object to Shotgun_Pump_Out. 61

66 Lesson 2: Designing a Soundscape The Shotgun_Pump_Out object is now selected, so you can see that this object that you copied is referencing the same Shotgun_Pump.wav file. Changing Object Parameters While both of the Shotgun_Pump objects indicate they are referencing a file with the same name, this does not mean that the Shotgun_Pump.wav audio file was duplicated. It means that the same audio file is being referenced by two different sound objects, which does not double the amount of memory necessary to play these objects. It s similar to the idea of a Digital Audio Workstation where a single audio file may be placed on multiple tracks to be edited and processed in different ways. In the same way, you ll now make modifications to the parameters of Shotgun_Pump_Out object to differentiate it from the pump in. 1. Verify that the Shotgun_Pump_Out object is selected and if not, select it. 62

67 Lesson 2: Designing a Soundscape The Sound SFX Property Editor view to the right displays settings that affect how the audio file contained within the selected object will play. There are numerous parameters available that you will explore later in this lesson as well as throughout this tutorial, but one very important parameter in game audio is pitch. You ll find the pitch parameter displayed just below the volume fader. This is very convenient for the game audio designer because usually in audio production tools, the pitch control is not prominently displayed even though you use it regularly. This is especially the case in game audio where pitch adjustment is constantly used, oftentimes to create the illusion of having an abundance of different sounds using only a single sound played at varying pitches. This strategy preserves precious memory. You ll use this approach to differentiate the pump in and pump out sounds. The pitch parameter value is expressed in musical cents. On a piano, there is 100 cents of pitch change between any two keys that are side by side, whether they re black or white keys. The pitch parameter default value is 0, meaning that the audio associated with the object will play back at its original pitch. To adjust the pitch value, there s a small black dot below the pitch property that when clicked brings up a slider. 2. Click and hold the slider head (black point) just below the current pitch value. 63

68 Lesson 2: Designing a Soundscape You can now adjust the slider to the left or right to adjust the playback pitch. Start by adjusting the value to 1200, which is a musical octave. 3. Press spacebar to hear the change. The Shotgun_Pump audio file plays an octave higher, resulting in a sound that plays twice as high and twice as fast. This is obviously too much, so now set the value to something that s a little more believable. This time you ll directly enter a value. 4. Click the current value, type 200 and press Return. 5. Play the object once more to hear the change. Now you have a pump out that s a bit more believable and slightly different from the pump in. 64

69 Lesson 2: Designing a Soundscape Using the Source Editor Although the pump out sound is playing at a slightly higher pitch, it s still identical in every other way. While it s a short sound, there s still a rhythmic pulse created by the pump mechanism s mechanical action. People tend to notice these subtle cues, so you can give the pump out its own distinct feel by slightly altering where the sound starts playing from. This is accomplished using the Source Editor. 1. Make sure the Shotgun_Pump_Out SFX object is still selected and then in the Contents Editor, double-click the audio source icon for the Shotgun_Pump audio file. The Source Editor opens. 65

70 Lesson 2: Designing a Soundscape The Source Editor provides a way to look at details related to the source audio generator. Wwise provides several methods of generating sound including tone generators and the specialized SoundSeed synthesizers. Clicking the Source Editor when these tools are being used displays the interface for these particular generators. In this case, since the source audio generator is an audio file, a waveform view of the audio signal is shown. This display also serves as a simple waveform editor, which lets you adjust where playback starts and ends. For the pump out, you re going to start playback at a later time in the audio file. You can easily do this by dragging the Trim Start control to the position that you want playback to start from. By reading the waveform, you can see where the rhythmic pulses of the mechanical noise are. Ideally, you want to begin playback just before one of these sections. 2. Drag the Trim Start control about a fourth of the way into the waveform, just before one of the peaks in the waveform. This change to the start position only occurs when the audio file is played from the Shotgun_Pump_Out sound object and doesn t change the way you heard the Shotgun_Pump_In object. In summary, the Sound SFX object may use the same source audio file, but each can have a unique start time, providing differentiation between the objects. 3. Play the Shotgun_Pump_Out object to hear the difference, then close the Source Editor window. Applying Multiple Actions to a Single Event Now that you ve set up the pump sounds, you need to get them to play at the right time. Visually, when the player fires the shotgun, you see the blast, followed by a pump-in and finally the pump-out action. You could ask the game engine programmer to provide separate pump-in and pump-out game 66

71 Lesson 2: Designing a Soundscape calls so you could then create corresponding Events as you did with the original Fire_Shotgun_Player Event used for the shotgun blast. Or, you could look to see if there s a way to achieve what you need without programmer interaction, because this saves precious time for both you and the programmer. Since the shotgun blast and the pumps are all part of the same visual animation and that animation never changes, the timing between the blast and the pump-in and pump-out visuals are predictable. You already have the Fire_Shotgun_Player Event for the shotgun blast, so you simply need to trigger the pump sounds to happen at a pre-determined time after that Event. This can be accomplished by delaying the Play actions. 1. In the Event Viewer, select the Fire_Shotgun_Player Event. You can see in the Event Editor the Play Shotgun_Blast action you configured in the last lesson. There s no practical limit to how many actions can be carried out for a single Event, so you ll simply add the Shotgun_Pump objects into the action list. This time, however, instead of first creating a Play action and then adding the object to be played, you ll simply drag the objects from the Project Explorer into the action list. To do this you need to select both of the Shotgun_Pump objects. 2. Press and hold the Shift key and select the Shotgun_Pump_In and Shotgun_Pump_Out objects. 67

72 Lesson 2: Designing a Soundscape Note If you don t hold down shift first, the moment you click on one of the Shotgun_Pump objects, the Event Editor will change to the Property Editor and you won t be able to complete the next steps. 3. Drag either of the selected objects to the action list in the Event Editor. The objects are now added to the Event Editor below the Shotgun_Bast. While these actions are listed in numerical order, it s important to know that these actions are not carried out sequentially, one after the other, but instead happen simultaneously unless you make some additional changes. 4. Play the Fire_Shotgun_Player event object. Notice that the blast and the pump sounds play at the same time. To get the pump sounds to match the animation sequence, you ll need to delay each of them with specific values. 5. In the Event Actions list, choose the Shotgun_Pump_In on line 2. 68

73 Lesson 2: Designing a Soundscape Beneath the Event Actions list, in the Action Properties area, you ll see a Delay property. The pump-in sound needs to be heard about a little less than a half second after the initial blast. Delay values are expressed in seconds, so if you enter.4, this equates to 400 milliseconds, or a little bit less than half a second, which will be about right. 6. Click the Delay parameter, type.4 and press Enter. The pump-out sound needs to be heard about a little more than a half second after the initial blast, so.7 would be a good choice. 7. Select the Shotgun_Pump_Out Action on line 3 and change its delay value to.7 and press Enter. 69

74 Lesson 2: Designing a Soundscape Now you can test the entire sequence of the blast with the shotgun pumps. 8. Play the Fire_Shotgun_Player event. Using Randomization One of the most powerful aspects that audio brings to video games is how it can drive the experience of the player in ways that a visual alone cannot. Audio s role is not limited to merely supporting the graphics that you see on the screen, so it s important to think beyond what you see in the game. More importantly focus on what things that you don t see. For example, the purpose of pumping a shotgun is to expel the used shell so that another can be loaded. Where does the shell go? It falls on the ground of course, but there s nothing about the shotgun animation that shows this. This doesn t mean that you shouldn t put shells in. In fact, you definitely should! This is what helps to sell the experience to the player. You ll now add the sound of shotgun shells hitting the ground. Every time the shells hit the ground, they bounce in a different pattern creating a different sonic rhythm, which means that using the same recording of shells bouncing on the ground over and over would quickly sound unnatural and become an audible nuisance for the person playing the game. To avoid this, you can import multiple audio files, each created from dropping actual shotgun shells on the ground. You ll then use a type of audio object called a Random Container to select one of these imported files each time the shotgun is fired. Importing an Audio File Folder In the last lesson, you added the shotgun blast sound using an import process you initiated from within Wwise. You can also drag audio files, or even folders containing audio files from a system window directly into your Wwise project. 70

75 Lesson 2: Designing a Soundscape 1. Within your operating system, navigate to the Wwise-101 > Lesson 2 > Audio files for Lesson 2 and drag the Shotgun Shells folder onto the Actor-Mixer Hierarchy s Default Work Unit. The Audio File Importer automatically opens. You see that the audio files contained within the folder you're about to import will be brought in as Sound SFX objects. The folder itself is represented in the top line as an object that will be imported into the hierarchical structure. By default the folder will be imported as a Virtual Folder, which is purely a way to organize objects within a Wwise Hierarchy. Instead you can change the object type to Random Container. Think of Random Container objects as a folder with some added functionality. Like a Sound SFX object, Random Containers can be selected and played using the play button in the Transport Control, in which case, one of the objects contained within will be randomly selected and played. This is a perfect way to add variety to sounds that would otherwise be annoyingly repetitive if the same audio file were played every time. 2. In the first line, change the Object Type/Action to Random Container and then click Import. 71

76 Lesson 2: Designing a Soundscape In the Project Explorer, you now see a new object named Shotgun Shells that has a different icon than the Sound SFX object you ve used to this point. 3. Expand the Shotgun Shells Random Container object. 72

77 Lesson 2: Designing a Soundscape You can see that all of the shotgun shell recordings have been imported as Sound SFX objects and they are contained within the Shotgun Shells Random Container. 4. Select the Shotgun Shells Random Container and play the object multiple times. 73

78 Lesson 2: Designing a Soundscape Notice that the sound of the shells dropping on the ground varies because each time you play the Shotgun Shells object, Wwise is randomly choosing one of the contained shotgun shell recordings. You may find that some of the shell sounds don t suit you, or you may have concerns about having too many sounds which uses more memory at run-time. You can choose to include or exclude specific shell recordings without having to permanently delete them from the Wwise project. This is accomplished using the platform inclusion/exclusion check boxes that appear to the left of every object in the Project Explorer. You can think of these check boxes somewhat like a mute button on a mixing console, as deselecting the check box removes its role in the creation of the soundscape, but provides a quick way to add it back in if you later decide you want it. 74

79 Lesson 2: Designing a Soundscape Note You ll learn more about how the platform inclusion/exclusion check boxes can be used for optimizing a project in Lesson De-select the platform inclusion/exclusion check boxes for the last 4 shells. Using Controlled Randomization While the shotgun shells are randomized, it s still possible that the same shell sound could be randomly selected multiple times in a row. This can be avoided by adjusting properties that let you control how randomization occurs. 1. In the Shotgun Shells Property Editor, click the Avoid repeating last check box and change the value to the last 2 played. 75

80 Lesson 2: Designing a Soundscape Now it will be impossible to hear the same exact shell sound played multiple times in a row. You may notice the Standard and Shuffle randomization radio buttons and wonder what they are used for. To help answer any interface questions you may have, Wwise conveniently provides a help button in the form of a question mark symbol for every view within the program. Click to view a list of every feature displayed within that view with an explanation of what it s used for. 2. Click the help button in the upper right corner of the Property Editor view. The Wwise contextual help opens with information about all of the properties currently displayed in the Property Editor. 76

81 Lesson 2: Designing a Soundscape Tip In the User Preferences dialog, you can set the contextual help to open to either the Audiokinetic online help or a CHM optionally included in your Wwise installation. 3. Scrolling down to the bottom of the page, click the Creating a Random Container link under How do I?... and navigate to its section called Using Random Containers - Example. In this example, read step 6 to understand the difference between Standard and Shuffle. You can see that Shuffle provides even more protection from hearing the same shotgun shells played closely together. 4. Click the Shuffle radio button and play the Shotgun Shells Random Container to hear the Effect. Randomizing Properties Beyond randomizing sound selection, in Wwise you can randomize the value of nearly every property that can affect your sounds, such as volume, filters, and 77

82 Lesson 2: Designing a Soundscape pitch. This, in combination with randomizing sound selection, makes for an even greater variety of sound, without adding to the amount of memory needed at run-time. The Randomizer button is found to the left of a properties value and looks like a small gray circle with a squiggly line through it. You ll further modify the shotgun shells by slightly randomizing the pitch of the shotgun shell recordings. 1. In the Shotgun Shells Property Editor, double-click the Randomizer icon for the Pitch property. The Randomizer window opens, displaying an Enable check box as well as settings for minimum and maximum values. To hear any change that you re about to make, you ll need to first enable randomization for the pitch property. 2. Click the Enable check box. 78

83 Lesson 2: Designing a Soundscape Notice that the Randomizer icon for the Pitch property has turned yellow, indicating the randomization is now active. Although randomization is technically activated, you won t hear any difference until you modify the Min/Max values. These Min/Max values are the range of relative offset values that center around the value set in the UI for the property. In the case of pitch, the value is expressed as cents. There are 100 cents of pitch per musical half step and a total of 1200 cents per octave. 3. Enter -150 and 150 into the Min and Max fields. Now, every time a shotgun shell is played, the pitch will be anywhere between 150 cents below or above the pitch that the sound was recorded at. 79

84 Lesson 2: Designing a Soundscape 4. Play the Shotgun Shells multiple times and notice the variation in the pitch each time it s played, then close the Pitch Randomizer window. Granulate Your Sounds Now you re going to provide even more differentiation in the shotgun shell sounds by dividing the shell recordings into two parts; the initial strike of the shell hitting the ground head, followed by the sound of the shell bouncing across the floor tail. By dividing the sound into multiple parts, you ll be able to randomly combine different head and tail sounds creating even more overall variety. You re going to start by creating a copy of the work you ve already done. 1. Right-click the Shotgun Shells object and choose Copy. 2. In the Actor-Mixer Hierarchy, right-click the Default Work Unit and choose Paste. 80

85 Lesson 2: Designing a Soundscape A duplicate Random Container called Shotgun Shell_01 is created. 3. Expand the Shotgun Shells_01 to display its contents. 81

86 Lesson 2: Designing a Soundscape 4. Rename the two Shotgun Shells Random Container objects Shotgun Shells Head and Shotgun Shells Tail respectively. You ve effectively created two Random Containers that currently both have the exact same content. You ll now modify Sound SFX Objects contained within so they only play a certain section of the audio file that was imported. To do this, you ll need to view the waveform of the actual audio file contained within the Sound SFX Objects. 5. In the Shotgun Shells Head Random Container, choose the ShotgunShellsConcrete_1 object and then in the Contents Editor doubleclick the ShotgunShellsConcrete_1 source object icon. 82

87 Lesson 2: Designing a Soundscape The Source Editor appears, displaying the audio file that s being used as a waveform. You can see the transients that show each time the shotgun shell bounced on the ground. At the bottom of the waveform display are blue squares that designate the area of the audio file that will be played. These can be moved to play only a defined section of the audio file. For all of the shells in the Head Random Container, you only want to play the initial strike of the shell on the ground. 6. Drag the End position square so that only the first shell drop is selected and play the object to check your work. 83

88 Lesson 2: Designing a Soundscape Sometimes clicks or pops can be heard when the sound is played, or sometimes you want a sound to gradually fade in or out. Getting rid of clicks or pops or providing fade-ins and fade-outs can be accomplished adjusting the blue triangles above the waveform display. 7. Drag the right fade triangle to the left to smooth the ending transition. Play the file repeatedly while making this adjustment and set it to your liking. 84

89 Lesson 2: Designing a Soundscape 8. Repeat steps 5-7 on all the remaining objects within the Shotgun Shells Head object. Now you ll do a similar operation in the 'Shotgun Shells Tail' Random Container. 9. Expand the 'Shotgun Shells Tail' Random Container and select the ShotgunShellsConcrete_1 object. 85

90 Lesson 2: Designing a Soundscape For all of the Shell Tail Sound SFX objects, you re going to make adjustments in the Source Editor so that the initial strike is not heard but the sound of the shell bouncing on the floor after that initial strike is heard. 10.Adjust the start position of every Sound SFX object within the Shotgun Shells Tail Random Container so that the sounds play just before the latter transients. Make any necessary fades to smooth the sound. Creating a Sequence Now that you have your separate head and tail sections, it s time to tie them together so that each time a shotgun is fired, you first hear a randomly selected head, followed by a randomly selected tail. You ll tie the head and tail together using another type of object called a Sequence Container. Similar to a Random Container, it holds other objects, but instead of randomly playing them, you can define a pre-ordered sequence of objects to play. In this case you ll set a sequence to play the head shell sounds first, followed by the tail shell sounds. With randomization and the already randomized pitch in each head and tail Random Container, the listener will not likely realize that so few shell recordings were used. You need to start by putting the Shotgun Shells Head and Tail random containers into a Sequence Container object. 86

91 Lesson 2: Designing a Soundscape 1. Press and hold the Ctrl key and select the Shotgun Shells Head and Shotgun Shells Tail Random Containers. 2. Right-click either of the two selected objects and choose New Parent > Sequence Container. 3. Rename the newly created object Shotgun Shells. 87

92 Lesson 2: Designing a Soundscape Now you need to define the order that you want the contained objects to play in. You may need a little more room to work, so re-size the Shotgun Shells Contents Editor area. 4. Resize the Contents Editor to show more space. 88

93 Lesson 2: Designing a Soundscape On the left side of the Contents Editor, there are two Random Containers shown within the Shotgun Shells sequence container. The order in which they are listed does not reflect the order in which they will be played. The order is controlled by the Playlist, which is displayed as a column on the right side of the Contents Editor. You add items to the playlist by dragging them from available objects in the list from the left column into the Playlist in the right column. 5. Drag the Shotgun Shells Head into the Playlist. Notice that not only do you see the 'Shotgun Shells Head' Random Container, but also you see that the playlist automatically expands to display the Sound SFX objects contained within. Now you ll add the 'Shotgun Shells Tail' Random Container at the end of the playlist, so the that the heads play first, followed by the tail. 6. Drag the Shotgun Shells Tail object to the lower half of the playlist. 89

94 Lesson 2: Designing a Soundscape 7. Double-click the 'Shotgun Shells' Sequence Container, and then play the object multiple times. Notice that only one of the head objects plays, and the tail object won t sound until you press play again. If left unchanged, the same thing would happen in the game, that is, the player would fire the shotgun once and 90

95 Lesson 2: Designing a Soundscape only hear the head, and then when they fire a second time they would then hear the tail. This is not the sound sequence you want, but it can be fixed by changing the Play Mode from Step to Continuous. 8. Be sure that the Shotgun Shells Sequence object is selected and click the Continuous radio button. 9. Play the Shotgun Shells Sequence Container multiple times. You now hear a randomly selected head shell followed by a randomly selected tail sound each time you play the object. Using Silence The head and tail shell sequence does not sound quite right and this is because there is no space or silence between the initial head sound and the tail sound. Had you left silence either after the head or before the tail sounds when you did your edits earlier, you wouldn t have this problem. However, rather than going back and changing those edits, you ll use a different approach that provides more flexibility. You re going to be creating and working with another object; however, you re going to need to audition how you use this object within the context of the overall Shotgun Shells Sequence Container. To ensure that the Transport Control stays connected to the Shotgun Shells object, you ll use the Transport Control s Pin feature. This effectively locks the transport to the currently selected object. 91

96 Lesson 2: Designing a Soundscape 1. Click the Pin in the transport to lock the transport to the Shotgun Shells object. To add silence in between the shell head and shell tail, you re going to create an object that will produce only silence and insert it in-between the head and tail objects in the Sequence Container s playlist. 2. Right-click the Shotgun Shells sequence object and choose New Child > Sound SFX. Name your new object Silence. The name is in red because there s no associated source (file or generator) feeding the Sound SFX object. The object s name appears in red, indicating that there s no valid audio source to play through the object. Up to this point, you ve used audio files as the sound source for Sound SFX objects, but there are other types of sources that are available, such as the Synth One synthesizer that generates its own sounds from scratch. In this case, you re going to choose Wwise Silence as the sound (or lack of sound) source. 3. In the Silence object s Contents Editor, click Add Source. 92

97 Lesson 2: Designing a Soundscape A list of available audio sources is displayed. 4. Choose Wwise Silence. A new Silence audio source object appears in the Contents Editor, which provides a parameter for duration. By default it is set to one second. Change the duration to 0.25 seconds. 93

98 Lesson 2: Designing a Soundscape You now need to add the Silence object to the Sequence Container so that it occurs between the Shotgun Shell Head and Shotgun Shells Tail objects in the playlist. New objects can be added within the playlist of the container objects. So to add silence after the Shotgun Shells Head, you need to drag the Silence object anywhere on lines Drag the Silence object anywhere on lines 2-9 in the Playlist. You now see the Silence object situated in between the shell head and tail Random Containers. Tip The amount of silence can be adjusted by changing the duration property of the Silence sound source. Now you need to connect the entire shells sequence to the Fire_Shotgun_Player event in order to hear how it all sounds together. 94

99 Lesson 2: Designing a Soundscape 6. In the Event Viewer, select the Fire_Shotgun_Player event. 7. Drag the Shotgun Shells Sequence object into the Fire_Shotgun_Player Event Editor. In this configuration, the sound of the shells hitting the ground will be heard before the shotgun pump-in sound is heard, which is not possible with a real shotgun. To avoid this, you ll need to delay the shells. 8. Set the Delay parameter for the newly created Action to 1.1 seconds. 95

100 Lesson 2: Designing a Soundscape When shells are ejected from a shotgun, they fly in different directions and don t always take the same amount of time before hitting the ground. You can simulate this by randomizing the delay property. 9. Randomize the Delay time by enabling the 'Randomizer' Effect and setting the max value to 0.4 seconds. Remember, the values here are offsets to the original value, so in this case it could take up to 1.5 seconds, but no less than 1.1 second before a shell hits the ground. However, since you have no minimum offset, no shell will hit the ground less than.7 seconds from when the trigger is pulled. 96

101 Lesson 2: Designing a Soundscape Earlier, you pinned the transport to the 'Shotgun Shells' Sequence Container. You ll have to first unpin it in order to focus the transport on the Fire_Shotgun_Player event so that you can hear the entire collection of shotgun related sounds. 10.Unpin the Transport Control and in the Event Viewer, choose the Fire_Shotgun_Player Event and play it to audition the completed Shotgun sequence. Verifying Your Work 1. In the main menu bar choose Views > Capture Log. In the toolbar, click Start Capture and press play on the 'Fire_Shotgun_Player' Event one time, then stop the capture. 97

102 Lesson 2: Designing a Soundscape A wealth of information is displayed. At the very top is the initial event game call that s transmitted when you press play, or in game-play when the player pulls the trigger. After that you see various actions that are triggered, which include both play and delay actions. Notifications verify that the intended action is occurring or has finished. This complex series of actions is what produces the soundscape you ve crafted in this lesson! Now you need to build the code based on your sound design and move the sounds into the game itself. This can be done with the push of a button. 2. Close the Capture Log, then in the main menu bar choose Layouts > SoundBank. Check the Main SoundBank, platform appropriate for your system and the English language, then click Generate to build the SoundBanks for your game. 3. Launch Cube and play the game and listen to your sound design within game play! 98

103 Lesson 3: Understanding Game Syncs Using Switches... Using Game Parameters... Using States... Integrating Your Game Syncs Into Cube... Viewing Game Syncs in the Profiler

104 Lesson 3: Understanding Game Syncs As you ve learned in the previous lessons, game calls are the messages between the game engine and the Wwise audio engine. So far, you ve worked with simple event game calls that signify when something like the player firing the shotgun has occurred, however sometimes it s necessary to communicate more details about particular conditions of the game. For example, what type of surface is the player walking on, how much health does he have left, is the player alive, or did he meet his demise? All of these conditions can have an impact on the sounds we want the player to hear. In the same way that Wwise uses Event objects to receive event type game calls such as the Fire_Shotgun_Player event you ve used in the previous lessons, you ll need to create specialized objects to receive messages that update Wwise about various conditions of the game. In Wwise the process of defining these conditions is accomplished via various types of objects that fall within a category referred to as Game Syncs. These Game Sync objects are the receptors for specialized game calls integrated by the programmer. There are different types of Game Sync objects, each with their own set of features for specific applications. You ll explore three of these in the exercises below. Using Switches In Cube, our hero does a lot of running around, chasing the bad guys or in some cases, running from the bad guys. But as with most first person player perspective games, you never actually see his feet. Does this mean he doesn t have any? Of course not! It s the audio department's job to help convince the player that our player is actually attached to the ground and not just floating through the game. This can be done by attaching footsteps to the player s movements. To achieve this, you need to have the game communicate information to Wwise about when the player moves. This can be done using simple event game calls, but achieved using various methods. One approach would be to send a call when the player starts to move, with another indicating when the player stops. In the case of Cube, each footstep the player takes is transmitted as an Event. If no footstep Events are transmitted, then the player isn t moving. You can attach a footstep sound to the footstep event just as you did with the shotgun, although it would be highly recommended that you provide multiple footstep sounds and randomly pick one each time the player moves so that they don t become annoyingly repetitive. All of this can be achieved building on the information learned in the last two lessons, but something else you 100

105 Lesson 3: Understanding Game Syncs have to consider is what surface is the player walking on. In Cube, the player moves around and is sometimes walking on concrete, dirt, metal and more. It s likely that a player would notice if they hear the sound of shoes on gravel, when the player is clearly walking on a concrete sidewalk, creating an undesired distraction and annoyance. To accommodate the change in surface, Wwise allows you to create a particular parameter, define options within that parameter and then use that information to affect change to the sound in a game. Let s say you want to have a player turn on a radio during the game and that radio has three preset buttons. Depending on the preset that s selected, you want to play different music. Setting this up is a three step process. First, you define a parameter with a Switch Group Object, then define options within that parameter using Switch Objects, and finally assign which sounds you want to hear using a Switch Container object. The Switch Group Object could be called Radio. Within that Switch Group, you would create three Switch Objects called Preset 1, Preset 2 and Preset 3. Finally, using a Switch Container you ll decide which audio files you want to hear based on which preset is currently selected; for example, Preset 1 would play Rock, Preset 2 would play Jazz, and Preset 3 would play Classical. Creating a Switch Group 1. Open the Lesson 3 Wwise project. You first need to create a Switch Group object. Much like an Event object, this provides the receptor for the information that will be transmitted by the game engine. 2. In the Designer Layout, select the Game Syncs tab within the Project Explorer. You see several folders representing specific types of Game Syncs that Wwise can receive. Each folder provides the ability to create different types of game 101

106 Lesson 3: Understanding Game Syncs syncs, each with their own set of features that speak to various conditionbased scenarios that are common in game play. For the purpose of defining what surface our player is walking on, Switches are the most appropriate choice. 3. In the Switches folder, select the Default Work Unit and then click the Create New Switch Group icon. A new object called a Switch Group is created and is ready to be named. Similar to Events, you and the game engine programmer must agree upon a name for the Switch Group message. While you intend to use this to affect the sound of the footsteps, there are many other sounds that this Switch Group utilizes in order to affect the sound. Knowing which material the player is walking on could also be used to change the sound of the shotgun shells that fall to the ground. For this reason, you ll name this object Material. 4. Rename the Switch to say Material and press enter. 102

107 Lesson 3: Understanding Game Syncs Defining Options within the Switch Group Now that you have a Switch Group, you need to further identify which positions within that group are possible. In this case, you want to know all the potential surfaces that the player could be on during game play, and then you must decide on the names you ll use to describe these surfaces. These names are represented as Switch objects contained within the Material Switch Group you just created. As with the Switch Group, these Switch names must be communicated to the programmer so the game engine can properly communicate which surface the player is walking on. Note In the case of Cube, the code for the game is already written, so it s imperative that you double-check that you accurately name Game Syncs or they will not work. 1. Select the Material Switch Group object you just created, and then click the Create new Switch icon. 103

108 Lesson 3: Understanding Game Syncs 2. Name the Switch object Concrete. In Cube, there are a total of nine different materials that our hero might find himself trotting across, so you ll need to represent each of them in this Switch Group. 3. Add and name the remaining Switch objects according to the following image. 104

109 Lesson 3: Understanding Game Syncs Your Switch Group is now ready to receive information from the game engine! If you double-click a Switch Group or Switch object, you may notice that the Property Editor displays little information. That s OK. The primary purpose of these objects is simply to be the receptor for the calls coming from the game engine. Tip If you inspect a Switch Group, you get a Game Parameter graph. This allows you to control the Switch change using a game parameter (RTPC). You ll learn more about Game Parameter graphs later in this lesson. Creating a Switch Container Now that you have the object that will receive the game call, you need to connect it with the sounds you intend to use in game. You created nine different surfaces that ultimately need to have corresponding sounds to go with them. This is achieved by creating Switch Container objects in the Actor-Mixer Hierarchy. 1. In the Audio tab of the Project Explorer, right-click the Default Work Unit in the Actor-Mixer Hierarchy and choose Import Audio Files. 105

110 Lesson 3: Understanding Game Syncs Instead of importing individual audio files, you ll import a folder. The advantage is that Wwise streamlines the process of creating the appropriate Random Containers and Sound SFX objects into a single process. 2. Click Add Folders. 3. Navigate to Wwise-101 > Lesson 3 > Audio files for Lesson 3, select the Footsteps Folder, then click Select Folder. The Audio File Importer window opens. 106

111 Lesson 3: Understanding Game Syncs. You ll see that Inside the Footsteps folder there were four folders containing footstep sounds on different types of material. You re probably wondering about why there aren t more folders representing the nine different surfaces you defined in the last exercise. The reality is that during game production, you may not have all the potential sounds you intend to use, or there may not be enough resources to provide unique sounds for every surface available. You ll see in the next exercise how you can use the same set of sounds for other surfaces. If you look at the Object/Type column, you can see that Wwise will automatically create a Virtual Folder for each of the folders contained within. In this case, you ll instruct Wwise to configure the Footsteps folder as a Switch Container. Switch Containers provide you the ability to choose which sounds will be played based on the status of specific input from the game. You ll learn more about Switch Containers later in this lesson. In addition you want each of the material folders to become Random Containers when imported. This can all be done in a single step. 4. Change the Footsteps Object Type/Action pull down menu to Switch Container. 107

112 Lesson 3: Understanding Game Syncs Upon changing the Footsteps to a Switch Container, each folder contained within automatically becomes a Random Container with the remaining objects becoming Sound SFX objects. 5. Click Import. A new Footsteps Switch Container is created. Inside the 'Footsteps' Switch Container is the complete structure of the folder you imported with sound files already configured as Sound SFX object placed within Random Containers. 6. Take a moment to expand the Footsteps hierarchy to see the result of the folder import process, then collapse the Footsteps Switch Container before proceeding. 108

113 Lesson 3: Understanding Game Syncs Connecting Switches with Switch Containers You ve just imported four sets of ground material sounds, yet there are nine possible materials defined within the game, so you ll have to use the same sounds for several different surfaces that the characters walk on. Making these assignments is accomplished within the Switch Container you just created. This is accomplished by first associating the Switch Container with a particular Switch Group. As you further develop the audio for the game, you could end up with many Switch Groups, for other applications, but only one Switch Group can be associated with a Switch Container. You assign a Switch Group to a Switch Container within the Switch Container s Property Editor. 1. With the Footsteps object selected, in the Property Editor, click the Group button and choose Switch Groups > Material. 109

114 Lesson 3: Understanding Game Syncs Now the 'Footsteps' Switch Container is aware of the possible surfaces the player may be on. If for some reason the game engine doesn t communicate a surface to the audio engine, you need to define a default surface that should be used, such as Concrete. 2. Click the Default Switch/State and choose Concrete. The assigned Object area is now populated with the Switch objects you created in the last exercise. In the Footsteps Contents Editor, the Random Containers representing the sounds you just imported are shown on the left, while the list of Switch objects indicating the actual surfaces the player is on are shown on the right. To assign a sound to a particular surface, you simply drag the object from the left column to the destination surface on the right. This is where you need to think about which sounds you have available and what makes the most sense for the surfaces that occur in the game. Some associations are obvious, such as Concrete sounds should go to the concrete 110

115 Lesson 3: Understanding Game Syncs surface; however, others may not be ideal. For example, which of the four types of sounds you imported would work for water? At this point, none of them, but for now you assign a placeholder. Later, when you can record yourself walking on water, you can update the water surface with a better sound. Using this approach, as long as you have all of the potential surfaces accounted for, you won t have to go back and bother a programmer when you want to change the sounds at a later time. 3. In the Footsteps Contents Editor, drag the Concrete Random Container object to the Concrete Switch in the Assigned Objects area. 4. Drag the Dirt Random Container object to the 'Grass' Switch and continue to assign them until all have an associated object. Tip If you select the Random Container in the left column, it will be assigned to the Transport so you can quickly audition the sound before deciding which surfaces it should be assigned to. 111

116 Lesson 3: Understanding Game Syncs Note It is possible to assign more than one object to the same surface in which case both would play simultaneously when the player is walking on that surface. Simulating Surfaces with a Switch Container The Switch only indicates which surface the player character is on, but it doesn t indicate that a footstep has been taken. To communicate this, you need to create an Event to receive footstep information, just like you did for the shotgun. 1. Go to the Project Explorer s Events tab, click the Event s Default Work Unit and create a new event called Foot_Player. 2. From the Project Explorer s Audio tab, drag the Footsteps Switch Container object into the action list in the Event Editor. 112

117 Lesson 3: Understanding Game Syncs Now when you play the Foot_Player event, one of the footstep sounds within the Switch Container will be played. Until the switch container is told otherwise, it will use the default surface type you defined, which was Concrete. 3. Play the Foot_Player event. You hear one of the randomly chosen sounds of a footstep on concrete. Now you need to audition the sounds of footsteps on other surfaces, as well as test that the surface switching system you ve configured is working properly. This is done using the Switches button in the Transport Control view. 4. Click Switches in the Transport Control view. Any Switch Containers associated with the event appear in the right side of the Transport Control. In addition, there is a pull-down menu where you can choose a specific surface which effectively simulates the player moving to another surface in the game. 5. In the pull-down menu choose Gravel, and then play the same Foot_Player event and then further experiment with playing different surfaces. 113

118 Lesson 3: Understanding Game Syncs You can quickly get back to your default surface by clicking Reset All in the Transport View. This button allows you to reset all Switches or other Games Syncs you ll create in the following lessons back to their default value. 6. Click Reset All in Transport Control. Using Game Parameters Another important type of game sync called a Game Parameter, is also known as an RTPC (Real Time Parameter Control). Game Parameters are great for any type of information that varies over a numerical range during game play. Game parameters could represent the speed or rpm of a car, mission completion percentage or even the time of day. In Cube, one very important variable is the health of the player. The player starts with a health value of 100, but if the bad guys have their way, our hero will meet his demise when his health deteriorates to a value of 0. While playing the game, the health value is visible in the lower part of the screen, but in the heat of battle, it s hard to keep your eye on the health meter. This is where audible feedback related to the player s health can be very helpful. The louder and more noticeable the heartbeat is, the worse shape the player is in. Creating a Game Parameter Like the Switch Container object in the previous exercise, a Game Parameter is simply an object put in place to receive specialized game calls. 114

119 Lesson 3: Understanding Game Syncs 1. Select the Game Syncs tab within the Project Explorer, then choose the Default Work Unit in the Game Parameters folder and click Create New Game Parameter. 2. Name the newly created game parameter object PlayerHealth. Game Parameters simply communicate a number within a defined range. This numerical range could be any range of numbers. For example, using the scenario of a car s speed, the range could be 0 to 300, representing kilometers per hour. 115

120 Lesson 3: Understanding Game Syncs In the case of Cube, the health parameter has a value of 0 to 100, which coincidentally is the default range of values, so no change to these properties is necessary. You do need to define a default value so that if the game doesn t communicate the current value, Wwise knows a value to start with. The player starts at full health so you ll need to set the default value to Change the Default value for the PlayerHealth game parameter to 100. Modifying Object Properties With Game Parameters Now you need to import the audio file you intend to use for a heartbeat. 1. Click the Audio tab and drag the Heartbeat audio file from the Audio files for Lesson 3 folder into the Actor-Mixer Hierarchy s default Work Unit. A new Sound SFX object called Heartbeat is created. 116

121 Lesson 3: Understanding Game Syncs This audio file plays a heartbeat that lasts about 30 seconds. You re ultimately going to trigger the heartbeat to play with a single event that will occur only one time when the player first starts a new level. It would be bad if your players heart stopped prematurely so you ll need to loop the file to play indefinitely. This is a behavior that can be turned on in the Sound Property Editor. 2. With the Heartbeat Sound SFX object selected, click the Loop check box. While the heartbeat will technically play the entire time the player is in the game, it could become really annoying to hear it beat constantly. Remember, the point of the heartbeat is to let the player know that his health is waning, 117

122 Lesson 3: Understanding Game Syncs so we only want to hear it when the health drops below a certain level. In essence, you want to have the value of the PlayerHealth Game Parameter affect the volume of the Heartbeat Sound SFX object. Define this in the RTPC tab in the Sound Property Editor. 3. In the Sound Property Editor, click the RTPC tab. The RTPC tab of the Property Editor is displayed. Note If necessary, drag the lower part of the Sound Property Editor down so that you can see more of the empty Graph View in the display. The main work of defining the relationship between a game parameter and the properties they affect is performed in a graph view in the Property Editor. Currently there s no information in the graph view since you haven t yet indicated what properties of the object you would like to modify based on a Game Parameter s input. 4. Click the [>>] Selector menu button and choose Voice Volume. 118

123 Lesson 3: Understanding Game Syncs 5. In the X Axis column, select PlayerHealth in the selector menu. You now see a graph where the X-axis shows player health and the Y-axis indicates the Heartbeat s voice volume. The diagonal red line is referred to as an RTPC curve, which indicates what volume the heartbeat will play at based on the player s health. The bottom of the Voice Volume column represents -200 db which is inaudible, so this may cause you to think that 119

124 Lesson 3: Understanding Game Syncs the player s health is at zero, and the heartbeat won t be heard. In fact, it s just the opposite, because the PlayerHealth game sync uses a scale where 100 represents full health and 0 represents that the player is dead. Making Game Parameter adjustments in the Graph View You need to indicate that when the player s health is good, you don t want to hear the heartbeat. This is done by modifying the RTPC Curve in the graph view. The curve is adjusted by moving control points which are white dots currently on either side of the curve. 1. Drag the right side control point down to the bottom. 120

125 Lesson 3: Understanding Game Syncs The result is that regardless of what the player s health is, 200 db of volume will be subtracted from the Heartbeats normal playback level. In most cases, anymore than 80 db of volume being subtracted would prevent the sound from being heard, so it s safe to say that the heartbeat won t be heard at all, so you ll need to make another adjustment. We don t want the heartbeat to be heard until the players health falls below 50, so you ll create a curve to accommodate this, which can easily be done by adding more control points. 2. Double-click the curve at around the 50 value to create a new control point. 121

126 Lesson 3: Understanding Game Syncs A new control point is created. 3. Click the far left control point, then type 0 into the Y: Coordinates, and press Enter. 122

127 Lesson 3: Understanding Game Syncs Tip You can zoom in on sections of the curve by using the plus and minus symbols in lower right corner of the graph. The icon in between the plus and minus symbol resets the graph view to display the entire curve. You can also use Z+clickdrag to zoom-in; or use CTRL+mouse wheel to zoom-in and CTRL+SHIFT+mouse wheel to zoom out. See the Wwise Keyboard Shortcuts Quick Reference Card available from the Wwise Help menu. Now the heartbeat s volume won t begin to increase until the player s health falls below 50. Sometimes linear transitions, especially for volume, don t create the smooth transitions we re looking for, so further modifications to the curve are necessary. This can be done by creating a lot more control points, or more complex lines can be created quickly by using various preset curve styles. In this case, you ll modify the curve to more rapidly raise the volume once the health falls below 50, and make only a gradual increase in the heartbeat s volume as the player s health falls closer to Right-click the curve anywhere to the right of the control point you just moved and choose Exponential (Base 3). It s very difficult to know exactly how to set the curve without auditioning how it will sound by simulating a change in the game parameter while listening to its effect on the property you re adjusting. To do this, simply play the Heartbeat object and move the PlayerHealth Game Parameter Cursor at the top of the graph left or right. 123

128 Lesson 3: Understanding Game Syncs 5. Play the Heartbeat and drag the PlayerHealth parameter cursor left and right to hear the effect of the game parameter on the Heartbeat object. Besides increasing the overall volume of the heartbeat, another way to gradually make the player aware of the heartbeat is to open a Low-pass filter. A Low-pass filter only lets sounds below a set frequency pass through. Setting a Low-pass filter so that only the lowest frequencies of the sound can be heard makes it sound muffled, which is a great way for the player to start to hear the heartbeat. Gradually opening the low- pass filter will make the heartbeat sound more pronounced and obvious. Since Wwise lets you map a single game parameter to multiple properties, you ll add a low pass filter curve in addition to the volume curve you just created. 6. Click the next available Selector menu button to map a second property, the Voice Low-pass Filter to the PlayerHealth game parameter. 124

129 Lesson 3: Understanding Game Syncs You now see two lines. Red lines indicate a volume curve, while blue represents a filter curve. The low pass filter property value can range from Think of it as a percentage that indicates what percentage of frequencies will be filtered away, starting at the top of the frequency spectrum. In other words, a value of 20 means the top 20 percent of the audible frequency spectrum will be filtered off making the sound seem not quite as bright or clear. Since the default value is 0, it means that currently there is no change to the audio and all of the frequencies in the sound can be heard. Note You can find an in-depth article related to low-pass filter values at Like the volume curve you created, you ll start with all of the frequencies being filtered away and then, once you get below a certain point, gradually open the filter until all of the frequencies can be heard. 7. Raise the right-side control point to the top and add a second control point near the 60 value. Raise this new control point to the top. 125

130 Lesson 3: Understanding Game Syncs 8. Experiment adjusting the PlayerHealth parameter in the graph view while you listen to the heartbeat. Adjusting RTPC Values in the Transport. You can also conveniently adjust game parameters in the Transport view just as you adjusted the Switch Group setting earlier in this lesson. 1. In the Transport Control, click RTPCs. The PlayerHealth RTPC and its value appear. 2. Click the PlayerHealth parameter and adjust the PlayerHealth slider while listening to the heartbeat. Using States States are yet another specialty game sync that are typically used to make sweeping changes to the game s audio in reaction to a global event in the 126

131 Lesson 3: Understanding Game Syncs game. For example, a State can be used to identify if the player is conscious or unconscious and above or below water. The status of the State can be used to offset object property values such as the low pass filter you just used in order to change the sonic texture of the game. In this exercise, you re going to set up a State to indicate whether the player is dead or alive. You ll use this State in this exercise to modify the heartbeat sound when the player dies in a way that s more interesting than simply stopping the sound. You ll also use this State in Lesson 4: Creating Space to make other changes to the sounds of the game. Creating a New State Group 1. Click the Game Syncs tab in the Project Explorer, select the Default Work Unit in the States folder, and then click the Create new State Group button. 2. Name the new State Group PlayerLife. 127

132 Lesson 3: Understanding Game Syncs 3. With the PlayerLife State Group selected, click the Create new State button. 4. Name the newly created state Alive,and then create another one named Dead. 128

133 Lesson 3: Understanding Game Syncs Just as with the other Game Syncs you ve created, the name for the State Group as well as the State objects contained need to be communicated to the game engine programmer so that the game calls match these objects. Creating a State Transition A State is uniquely able to provide an offset to an object s properties that can be applied gradually over a defined amount of time. For example, in a war game, a State could be used to as a way to low pass filter nearly all of the sounds in a game when a grenade lands by the player, stunning him. The transition from an unstunned state to stunned state could have a transition time that is instantaneous, but the effects of moving from stunned back to unstunned could be set to occur over a matter of 15 seconds or more, gradually decreasing the impact of the filter until the effect of the stun wears off, and the sounds again can be heard with full frequency. In this exercise you ll define that the transition from Alive to Dead occurs over 5 seconds. 1. Double-click the 'PlayerLife' State Group you created. In the State Group Property Editor, click the Insert button. 129

134 Lesson 3: Understanding Game Syncs In the Custom Transition Time area, there is a From and a To column with a time value separating the two. 2. In the Custom Transition Time area, set the From pulldown menu to Alive and the To pull-down menu to Dead. 3. Set the transition time to 5 seconds. Configuring State Modification Values Now that you ve set up your State Group with the desired transition time, you need to identify which properties of the Heartbeat Sound SFX object you want to change when the PlayerLife state changes. 1. In the Project Explorer s Audio tab, confirm the Heartbeat object is selected and then switch to the States tab. Before you can indicate which properties will be affected by a change in a state, you need to indicate which State Group will affect the Heartbeat object. 2. Click Add and choose PlayerLife. 130

135 Lesson 3: Understanding Game Syncs The 'PlayerLife' State Group is displayed with a list of possible States shown below. Each State has parameters that can be offset when the corresponding State is in effect. You don t want anything to be offset when the player is alive, but when the player dies, you want the volume of the heartbeat to fade away. You ll do this by lowering the volume as well as raising the value of the Low-pass Filter. 3. In the 'Dead' State, set the Voice Volume to -96 and the Voice Low-pass Filter to

136 Lesson 3: Understanding Game Syncs Simulating State Transition Using the Transport Control Remember that the transition time you set when going from Alive to Dead is five seconds long, so the change in the volume and the filter of the heartbeat will gradually crossfade over five seconds, letting the player hear their heartbeat gradually fade away once they ve died. Just as you ve used the Transport Control to test Switches and Game Parameters, you can do the same with States. Before you test it, you want to be able to hear the heartbeat, so you ll need to set the PlayerHealth RTPC to 0, so you can hear the heartbeat loud and clear. 1. In the Transport Control view, set the PlayerHealth RTPC to Click States. 3. Change the PlayerLife State Group to Dead. While it may seem sad to hear your player s heart gradually fade away, remember that you can bring him back to life by simply changing the 'PlayerLife' State back to Alive. Since you didn t define a transition time that goes from Dead to Alive, the default transition time that was set to one second will be used. Integrating Your Game Syncs Into Cube Now you re ready to integrate your work into Cube. You ll do this by regenerating the SoundBank as you have in the last two lessons, but first you have to think about how you re going to start your player s heart. Cube has no game call to start the player s heart. While you could ask the programmer to 132

137 Lesson 3: Understanding Game Syncs add one, think about other ways you could accomplish the same thing without programmer involvement. You simply need an event that happens one time when the game is played. You re in luck since there is an event used to start music at the beginning of the levels. While it wasn t intended for a heartbeat, it will work just as well. This time instead of going to the Event tab in the Project Explorer, you ll use a shortcut. 1. Right-click in the main area of the Event Viewer and choose New Event > Play. The New Event dialog box opens showing the Events Folder. 2. In the name field, type DCP_Music and click OK. 133

138 Lesson 3: Understanding Game Syncs 3. Drag the Heartbeat Sound SFX object into the Objects column of the Action List. Now you re ready to update the SoundBank. 4. In the main menu bar, choose Layouts > SoundBank or press F7. 134

139 Lesson 3: Understanding Game Syncs You ll need to add the 'Foot_Player' and 'DCP_Music' Events to the SoundBank. 5. In the Event Viewer, drag both the DCP_Music and Foot_Player to the SoundBank Editor of the Main SoundBank. 6. In the SoundBank Manager, press Generate to generate the SoundBank with your game sync integration. 135

140 Lesson 3: Understanding Game Syncs Viewing Game Syncs in the Profiler Now you ll use the Profiler to view the game syncs you ve configured in this lesson and verify that they re working properly. 1. In the main menu choose Layouts > Profiler. The Profiler layout is displayed. A lot of information can be viewed by the Profiler but sometimes it s too much. Since you re only interested in looking at the game sync functionality, you can use a Filter to select the specific types of incidents you wish to see. 2. Click Filter in the Capture Log view located in the upper left area of the Profiler layout. 136

141 Lesson 3: Understanding Game Syncs The Capture Log Filter is displayed, providing check boxes that you can use to filter your view to see specific types of information. 3. Disable all check boxes, except for States and Switches, then click OK. 137

142 Lesson 3: Understanding Game Syncs 4. Launch Cube. Remember that the version of Cube you re running is a special profiler version of the game that can be connected directly to Wwise. Once Cube is running, you need to establish your connection between Wwise and the game. 5. In Wwise, click Remote. Select your computer, and click Connect. 138

143 Lesson 3: Understanding Game Syncs Wwise connects to the game. The Start capture on connect check box was selected, so Wwise immediately begins a capture log. 6. Play Cube and run through the level while capturing a log in the profiler Capture Log. You can see in the Capture Log that as the player character moves through the level that Wwise is receiving the Switch calls indicating the surface that the player is on. 139

144 Lesson 4: Creating Space Using 3D Game Defined... Understanding 3D User Defined... Using 2D Panning... Play the Game

145 Lesson 4: Creating Space Close your eyes and listen to the sounds around you. Perhaps there s a bird chirping in the distance, a plane flying overhead, the sound of a clock ticking. With your eyes shut, how do you know where those sounds are originating from? Are they to your left or right; are they near or far? Your ability to make these determinations is based on physics. Sound coming from your right arrives at your right ear louder and earlier than it arrives at your left ear and your brain quickly recognizes these differences which in turn create the perception that the sound is indeed coming from your right. An object that s far away is quieter not just in its overall volume, but also in tone because some frequencies of sound can t pass through air as easily as others, affecting the overall quality of the sound based on its distance to you. Audio engineers use volume and pan controls and more to re-create the idea of space when you listen to pre-recorded material played through a set of speakers. Music engineers use volume and pan controls to paint the sonic picture they want the listener to perceive. For example, is the guitarist standing on the left or right side of the stage? With audio for film and TV, there s already an image presented on the screen, so the sound engineer uses these same controls to create an audible image that matches the visual one - it would be very distracting to see a man talking on the right side of the screen while his voice comes from the left. With video games, it s much like audio for film and TV where there s an image on screen; however, the major difference is that with games, there s no way to predict exactly what that image will be, as this is dictated by how the player plays the game. This all but eliminates the ability for game audio engineers to use volume and pan controls in a conventional way. To accommodate the unpredictability of a game, audio engines such as Wwise use unique systems to allow the game itself to automatically control how the audio is mixed in real-time. Using 3D Game Defined As in the real world, objects in a game make sounds, like the footsteps of the enemy approaching. Anything in the game that makes a sound is conceptually referred to as an emitter. Having an emitter in a game isn t very useful unless there s something that s going to receive or hear those sounds. The listener is usually associated with the main character in a first person perspective game, like the character you are playing in Cube. Emitters and listeners are connected to game objects that have x, y and z coordinates, as well as other information to indicate the direction the object is facing. Wwise uses all this information to effectively set properties such as volume and pan to achieve the appropriate settings for the volume and pan properties of these sounds based on the spatial relationship between the emitter and the listener. All of this is achieved instantly and these properties are constantly being updated as the spatial relationships change when the various objects in the game move around. Because these 141

146 Lesson 4: Creating Space decisions are based on the positions of objects in a 3D space, this type of property is known as 3D Game Defined. Using 3D Game Defined does not mean that you, the sound designer are taken out of the equation. In fact, you must make important decisions that provide a framework for how you would like Wwise to react based on those spatial relationships. For example, you could describe how quickly you want a sound to fade out based on how far away the emitter is from the listener. Creating an Attenuation curve Share Set Using positional information to modify the properties of a sound is accomplished with something called an Attenuation curve. You ll learn how to create an Attenuation curve in the next exercise, but first you ll need to configure an Attenuation curve ShareSet. ShareSets are a form of preset that lets you apply various types of settings that you intend to use often or on multiple objects as you build your project. 1. Launch the Lesson 4 Wwise project. 2. In the Project Explorer, click the ShareSets tab. 142

147 Lesson 4: Creating Space You see a variety of ShareSet Work Units that are divided into different folders based on their type. 3. Right-click the Attenuations folder, choose New Child and then create a new Work Unit called My Cube. 143

148 Lesson 4: Creating Space 4. With your new Work Unit selected, click the Create new Attenuation icon. 144

149 Lesson 4: Creating Space If you think about it, the physics of an environment affects all types sounds equally, so in most cases, you ll create a single Attenuation curve that can be used for a majority of the sound objects used in the game. 5. Name the Attenuation object Object_Attenuation. 145

150 Lesson 4: Creating Space Assigning Attenuation curves to Objects Attenuation curves can be applied to objects in the Actor-Mixer Hierarchy using the Property Editor s Positioning tab. To explore how attenuation curves work, you re going to add a sound to the teleporters found throughout Cube. Imagine that each teleporter emits a constant sound into the environment. How close would you need to be before you hear it? This is one of many things that attenuation curves address. First, you ll need a sound for the teleporter. Note Attenuation curves can also be applied to objects in the Interactive Music Hierarchy. 1. In the Project Explorer s Audio tab, right-click the Default Work Unit of the Actor-Mixer Hierarchy and choose Import Audio Files. 146

151 Lesson 4: Creating Space 2. Click Add Files. 3. Navigate to your Lesson 4 folder and select/open the Teleport WAV file in the Audio Files for Lesson 4 folder and click Import. 147

152 Lesson 4: Creating Space The file you just imported is very short. Since the teleporter is to emit a constant sound, you ll need to loop the object. 4. Select the Teleport SFX Object you just created and in the General Settings tab, click the loop check box. 5. Select the Teleport SFX Object that was just created, and then switch to the Positioning tab in the Sound Property Editor. 148

153 Lesson 4: Creating Space One of the most important controls in the Positioning tab defines whether or not the sound is rendered into the player s speakers using a 2D or 3D approach. In essence, 2D simply plays the sound through the speakers without any change to its current volume or pan positions. You ll explore the application and options for using 2D later in this lesson. With the 3D option, the coordinates of the sound-emitting objects, such as the teleporter, are used to automatically modify sound properties so that the listening experience matches the visual experience. 6. In the Teleport Sound Property Editor, change the 2D setting to 3D. Selecting 3D now makes the 3D parameter options available. 149

154 Lesson 4: Creating Space You re going to begin making adjustments to 3D parameters within the container of the Object_Attenuation ShareSet. While it s possible to create an Attenuation curve that is specific to the teleporter, you re actually going to use the teleporter as a way to test how you want sounds to change in your world over a distance. Since the impact of sounds traveling over distance will most likely be the same for all objects in the world, creating these settings within a ShareSet provides a quick way to apply these settings to many other objects as you further develop your game. 7. Click the selector button and choose Object_Attenuation. 150

155 Lesson 4: Creating Space The Object_Attenuation ShareSet is selected. The parameters in the ShareSet are now applied to the sound; however, they re using default values. Now you need to adjust these values to your liking. 8. Next to the Object_Attenuation, click Edit. 151

156 Lesson 4: Creating Space The Attenuation Editor opens. Notice that the Attenuation Editor is very similar to the RTPC editor you used in the last lesson. In essence, they re the same thing, except that instead of assigning a game sync to particular parameters of your sound, the distance between the object and the listener s position is automatically assigned. There are also a fixed set of parameters that can be impacted by the Distance value. Attenuations are typically used to simulate the natural weakening of a signal as it moves away from the listener. Wwise uses a series of curves to map Wwise property values, such as volume and low pass filter, to specific distance values. With these curves, you can create a sophisticated distancebased roll-off for your sound and music objects. As with the RTPC curves you used in the last lesson, red lines represent how an object s volume is affected as the operating parameter changes. Note There are seven different Attenuation curves, each displayed in a different color. 152

157 Lesson 4: Creating Space In this scenario, the distance between the game object producing the sound and the listener will determine the volume. Wwise determines this distance by comparing the X/Y/Z coordinates of both the emitter and the listener relative to one another at the moment a sound occurs. The most obvious change to a sound as its source gets further away is that it gets quieter, so, by default, the current curve is affecting volume, as indicated by the red diagonal line in the graph view. Adjusting Attenuation curves To properly adjust an Attenuation curve, you need to understand the meaning of the games distance units make appropriate decisions. A distance unit is defined by the game itself and is pre-determined in the initial phases of the game s development. For example, for a game about being an ant, the distance unit may be a millimeter, while for a game about intergalactic space travel, the distance unit might be in light years. In the case of Cube, the distance unit represents approximately.25 meters. The X axis of the graph represents distance, and the amount of distance represented on the graph can cover any range by modifying the Max distance property. 1. Change the Max distance property to 50 and press Enter. 153

158 Lesson 4: Creating Space Currently the Attenuation curve shows that the sound gets quieter as the distance between the sound emitter the teleporter, listener the player increases. You can audition how this change in distance affects the sound by dragging the Distance parameter cursor left and right as you play the sound. 2. Play the Teleporter sound and adjust the Distance parameter value, then leave it at a value of approximately 25. Note The teleport sound is set to loop indefinitely. This is very convenient for this exercise as you won t need to constantly play the sound to audition the sound as you make adjustments. Just remember to press the square stop button in the transport to stop playback. Also, be sure to only play the sound one time to start it. Pressing the Play button multiple times will cause multiple instances of the sound to be played simultaneously. 154

159 Lesson 4: Creating Space As with RTPC curves, the shape of the Attenuation curve can be modified. So that the sound isn t heard too far off in the distance, modify the sound so that a significant amount of volume is reduced when the listener is 30 meters from the teleporter. 3. Double-click the parameter curve to create a new control point and set it to a distance of 30, with an Output Bus Volume of -17. Tip Use the X and Y coordinate values to help you see the exact values. After volume, one of the most important changes to a sound as it travels through the air is that high frequencies are diminished over distance. This can be achieved by mapping the Distance parameter to Low-pass filter. 4. In the Curves area, select the Low-pass filter and set its Curve type to Custom. 155

160 Lesson 4: Creating Space 5. Hold Ctrl and select the Output Bus volume curve to display both curves and experiment with how the change impacts the sound. In some cases, after you get the shape of the curve just right, you may find that you want to adjust the overall scale of the curve to be different. This can easily be changed without having to re-create your curves. 6. Change the Max distance value back to

161 Lesson 4: Creating Space Notice how the overall curve automatically scales to the new distance range and the bulk of the sound tapers off when the listener is 60 meters from the teleporter. Adding Cone Attenuation Accounting for how sound changes over distance is important, but what about how sound changes when the source of that sound doesn t move any further away, but instead turns away. For example, imagine that you re listening to the sound of a trumpet, where the trumpet player is directly facing you at a distance of 3 meters. If that trumpet player now spun 180º so that their back is facing you, would it sound the same? Because the bulk of the trumpet s energy is projected forward, and the listener is behind, the sound would be perceived as quieter and more muffled. To account for these changes in a sound sources direction, Wwise offers something called cone attenuation. Cone attenuation properties are found in the lower right area of the Attenuation Editor. There s also an Attenuation Preview image that is designed to show you the relationship between the emitter and the listener. 1. Select the Cone Attenuation check box. 157

162 Lesson 4: Creating Space The Cone Attenuation properties are now available, as well as the Attenuation Preview area. The Attenuation Preview is designed to give you a visual representation as well as a way to simulate the relationship between an emitter and a listener. It s natural to think that the graphic for the cone attenuation puts the listener in the center of the circle, with the red dot representing the emitter; however, it s just the opposite. As a whole, the diagram represents how the sound emitting object in the game will project its sound into the world with that sound source positioned at the center of the circle. The position of the listener is defined by the red dot. The light gray area shows that if a listener is within that forward facing zone, no additional changes to sound emitter properties will be made. The darker blue area shows that when the listener is behind the emitter, the emitter's object properties will be modified using the additional Cone Attenuation properties set in the Cone Attenuation area just to the left of the Attenuation Preview. The lighter blue area represents a transition area that will gradually change property values from those used in the light gray area to the darker blue area. 158

163 Lesson 4: Creating Space It s easiest to make some changes to see how the visual representation of the Attenuation Preview can be interpreted and how you can use the Attenuation Preview to simulate changes in angle and distance of the sound emitter relative to the listener position. 2. Change the Low-pass filter value to 50 and press Enter. Although you ve made a change to the Low-pass filter, you won t hear any change because this value will only be heard when the listener is looking at the back of the emitter. To do this, you need to move the listener behind the emitter. 3. In the Attenuation Preview, drag the black line around to the opposite side. Now you hear the obvious effect of the Low-pass filter. You may have also noticed that as you swung the dot behind the emitter, there was a gradual increase in the filter as you passed through the light blue area. 4. Drag the black line to -105 degrees. 159

164 Lesson 4: Creating Space Now the listener is in this transitional zone. The size of the transition zone can be customized by modifying the Inner or Outer angle properties. 5. Change the outer angle value to 90 degrees and press Enter. 6. Set the Low-pass filter value to 20, or to your liking. 160

165 Lesson 4: Creating Space Now that we re finished with this SFX object, it will need an event in order to be heard in the game. 7. Close the Attenuation Editor, then right-click the Teleport SFX object and choose New Event > Play. The Name field of the event is already conveniently highlighted, allowing you to simply start typing. 8. Name this event Emitter_Teleport and press Enter. 161

166 Lesson 4: Creating Space Understanding 3D User Defined What happens for sounds that aren t associated with an actual game object such as the shotgun shells that you added in Lesson 2? When a shotgun ejects its shell, it falls to the right and bounces on the ground ending up several meters from the gun itself. To create a sense of realism, you want the listener to hear those shells from the right side while playing the game, but because there is no shotgun shell game object, there s no coordinate information that Wwise can use to try and position their sound in the 3D world as you did in the last exercise. Fortunately, with Wwise, you can essentially simulate placing a sound object in Wwise into the 3D world, even when the game itself does not have a game object for that sound. This is referred to as a User-defined 3D sound source. 1. In the Project Explorer s Audio tab, choose the Shotgun Shells object and in the Property Editor select the Positioning tab. Change 2D to 3D, then select User-defined radio button in the Position Source area. 162

167 Lesson 4: Creating Space Selecting User-defined is only the beginning of the process. You now need to enter specific information about where you want the sound to reside in the 3D world relative to the position of the listener using the Wwise Position Editor. 2. Click Edit next to the User-defined radio button you just selected. The Position Editor window opens. This editor is a very powerful and feature rich tool that can accommodate creating highly customized, dynamic movements of sounds in a 3D space, without needing any additional interaction with the game programmers. It s a fantastic tool for creating ambient spaces where birds fly overhead, or the creaks and groans of an old building. You ll use the Position Editor to make the shotgun shells sound more believable by adding positional changes to the shells sounds as they bounce across the floor. The Position Editor accomplishes the dynamic movement of a sound source by using paths, which are user-defined trajectories for a sound object to follow. 3. In the Paths area, click New. 163

168 Lesson 4: Creating Space A dot appears in the display indicating where the sound will come from as it relates to the listener s position which is in the center of the square. Since shells are ejected from the right side of a gun, you want to move this position to the right. 4. Drag the control point to the right. 164

169 Lesson 4: Creating Space.. The shell will continue to bounce on the ground, so you can add additional points to create a path in which the shells will follow by double-clicking in the view. 5. Create additional control points in an area to the right. 165

170 Lesson 4: Creating Space The dots are connected with a line, showing the path that they will follow in 3D space. You may have also noticed that at the bottom of the Position Editor, there is a timeline, and every time you added a point in the display, corresponding points were also created on this timeline. This timeline indicates how long it takes for the virtual object in the game to move from point to point to point. Note Current limitations with the Mac version of Wwise prevent the display of the timeline. This will be corrected in a future version of Wwise. The absence of the timeline display does not impact the lesson steps. 166

171 Lesson 4: Creating Space The sound of the shells bouncing only lasts for a few seconds when they fall, so you can adjust the length of the overall timeline to more closely match the length of time that you ll actually hear the shells. 6. Click the Configure Timeline and change the Length property to 3 seconds and click OK. In reality, the shells falling on the ground won t always follow the same physical path as they bounce, so to further increase the sense of realism, you can create multiple paths, with each dropping of the shells using a different path. Instead of creating a new path from scratch, you ll copy your existing path multiple times and then go back and modify these paths to create a variety of trajectories for the shells to travel in. 167

172 Lesson 4: Creating Space 7. With the Shotgun Shells_Path selected, right-click and choose Copy to Clipboard. Tip You can also select the path in the Paths list and press CTRL-C to copy it. The current path is copied into the clipboard. 8. Press Ctrl +V several times to create six new paths. 9. Select a path and alter the position of the dots. Repeat until none are identical. 168

173 Lesson 4: Creating Space You re almost ready to go. You just need to make a couple of adjustments. First, you need to indicate that you want to randomly choose any of the paths each time the shells fall to the ground. 10.Click the Random radio button. 169

174 Lesson 4: Creating Space By default, each time an object with a user-defined path is played, it plays entirely from the first position on that path. The next time it plays, it advances to the next position in the path and so on. For the shells, you want the movement of the object to continuously move on this path when the shells object is played, effectively creating continuous movement as the shells fall onto the ground. 11.In the Play Mode area, select Continuous. 170

175 Lesson 4: Creating Space 12.Close the Position Editor and then play the Shotgun Shells to hear the result of your work. Using 2D Panning There are some instances where the 3D approach to positioning a sound is unnecessary. This is especially true for music or narration in the game, as these elements aren t represented by actual game objects. For example, it s unlikely there s a rock band represented in the 3D world of Cube, even though you might choose to add a driving soundtrack to the game. However, you can still control which speakers the sound comes from using a more conventional approach to panning the sound to the speaker(s) that you want the sound to come from. For example, you may want narration to come from behind the listener by positioning it in the left and right surround speakers, or you may want the music to only come from the left and right front speakers. Positioning sounds using this conventional approach where location of an emitter in a 3D world is ignored is referred to as 2D panning. 171

176 Lesson 4: Creating Space 2D positioning can be used for sounds that do accompany visual objects within the game, but this is usually reserved for when these objects are viewed in the same position relative to the player s perspective. For example, in Cube each time the player pumps the shotgun, the animation of where that occurs is in front of the player s perspective and slightly to the right. You ll use 2D panning to give the shotgun pump sounds a subtle sense of their own space in the world, even though they aren t represented as an actual game object within Cube. Because there are actually two shotgun pump sounds, a pump_in and pump_out, you ll first group them into an Actor-Mixer. Actor-Mixer objects serve as folders to organize your project, but with the added benefit of being able to serve as a way to quickly apply property settings to all objects that are contained within. In the case of the shotgun pumps, where you ll typically want to equally adjust things like volume and panning, placing them into an ActorMixer will save you from having to make the same adjustments twice. 1. In the Project Explorer, select the Shotgun_Pump_In and the Shotgun_Pump_Out objects, right-click and choose Actor-Mixer. 2. Name the Actor-Mixer Shotgun Pumps. 172

177 Lesson 4: Creating Space By default, the source channels of a 2D sound are linked together and are played through the front left and right speakers regardless of the position or orientation of the listener or game object. To give you added flexibility, Wwise also provides you with a 2D Panner that you can use to balance the volume of each channel so the sound can be heard through the front and rear speakers in the surround sound playback environment. 3. With the Shotgun Pumps selected, select the Enable Panner box within the 2D area, then click the Edit button. 173

178 Lesson 4: Creating Space The 2D Position Editor is displayed, showing an overhead view of a person sitting in the middle of a room with speakers in typical 5.1 surround sound positions. 174

179 Lesson 4: Creating Space With the control point directly over the player s head, the sound is divided between the speakers of a surround system. Tip For the sounds in your game that are crucial to game play, you may want to ensure that they are clearly heard by the game player. To achieve this, you can route any percentage of a 2D or 3D sound or music object to the center speaker. For example, the voices of the drivers or announcers at a race track can pass completely through the center speaker so that they are perfectly audible no matter how loud the other sounds are in the game. 4. Drag the control point forward and to the right. 175

180 Lesson 4: Creating Space Now each time the shotgun if fired, the pumping sounds of the shotgun will be just in front of and to the right from the player s perspective. 5. Close the 2D panner. Play the Game 1. Choose Layouts > SoundBank or press F7. 176

181 Lesson 4: Creating Space 2. In the SoundBanks view, select the Main SoundBank and then drag the Emitter_Teleport event from the Event Viewer to the SoundBank Editor Hierarchy Inclusion area found within the Add tab. 3. Click Generate to create your SoundBank. 177

182 Lesson 4: Creating Space 4. Launch and play Cube with your new sounds and be sure to see how your Attenuation curve settings work as you approach the teleporter. Be sure to listen for how the settings you configured affect the sounds in game play. Move closer and further away from the teleporter to see how distance attenuation changes the sound; fire your shotgun and listen for the position of the shells. Try going back into Wwise, make further adjustments, and re-generate the SoundBank until the Effect is exactly what you want. Now you re ready to explore the changes you made in the lesson. 178

183 Lesson 5: Understanding Audio Signal Flow Organizing with Actor-Mixers... Using the Master Mixer Hierarchy... Working with Effects... Using the Schematic View

184 Lesson 5: Understanding Audio Signal Flow A finished game will have hundreds if not thousands of sounds that all need to make their way to the speaker that the player is listening to. As you ve learned, sounds in Wwise originate from sources such as audio files or signal generators, but the journey that each signal takes from its point of origin, through the Wwise mixing system and on to your computer s speaker can vary. Much like in Digital Audio Workstations and conventional mixing consoles, source signals can be combined together onto busses for easy organization and control of the signal flow. Portions of signals can be sent via Auxiliary Sends to apply Effects. In this lesson you ll explore how to build these pathways and, more importantly, understand why they are necessary. Organizing with Actor-Mixers One of your first steps in organizing your project s audio signal flow is to first organize the various objects within the Actor-Mixer Hierarchy. In earlier lessons, you ve placed various sound objects into a container to both organize similar sounds together and to use the container s properties to quickly apply features such as pitch randomization to all of the objects contained within. Organizing objects of a similar type together is a good place to start when trying to manage the hundreds or even thousands of sounds that you may integrate into a game. You ll begin by placing all of the sounds associated with various items our hero may find as he explores the many levels available in Cube, such as the teleporter, armor, and more into an Actor-Mixer object. 1. Open the Lesson 5 project. The Lesson 5 project has a variety of new Sound SFX objects and Events already configured to provide you with more content to work with as you begin to learn how to organize more fully developed projects. Tip Take time later to explore the project and see how the provided content is assembled. The general structure and approach should now be familiar to you. 2. In the Project Explorer Audio tab, select Default Work Unit, and then click the Create new Actor-Mixer button. 180

185 Lesson 5: Understanding Audio Signal Flow 3. Name the newly created Actor-Mixer Items. 181

186 Lesson 5: Understanding Audio Signal Flow 4. Select everything below Footsteps with the exception of Cube Main Theme and Heartbeat. Drag your selection into the Items Actor-Mixer. 182

187 Lesson 5: Understanding Audio Signal Flow 5. In the Project Explorer, select the newly created Items Actor-Mixer. Now that your items are contained within the Items Actor-Mixer, you need to clearly understand what an Actor-Mixer is, and more importantly, what an Actor-Mixer isn t. Because of its name, you may have the impression that all of the audio signals that are output from the various objects contained within, are combined together, and that the Volume fader found in the Actor-Mixer s General Settings tab acts something like a master fader for the overall volume of these combined signals. This is not the case! While its name might imply otherwise, the Actor-Mixer doesn t actually mix anything and none of the sounds contained within the Actor-Mixer are ever mixed together. Instead, the value for properties with numeric variables such as Voice Volume or Low-pass filter represent an offset value for the same property of items contained within. For example, if the Voice Volume property for the Actor-Mixer is -3, then 3 db would be subtracted from the Voice Volume of every object contained within, even though you don t see that value when 183

188 Lesson 5: Understanding Audio Signal Flow looking directly at those objects contained within. The effect is cumulative, so if an Actor-Mixer is contained within another Actor-Mixer or any other object such as a Random or Sequence Container that also has a Voice Volume parameter, then all of the offsets are added together to determine what volume value should be used each time the sound source is played. Turning the Voice Volume property all the way down on an Actor-Mixer that sits at the highest level of the hierarchy, results in the same reduction of the Voice Volume (-96 db) for all of its contained objects. Essentially, you have done the equivalent of going to each individual object within and turned all of their Voice Volumes down. But, even such a drastic reduction would not necessarily silence the objects because the cumulative Voice Volumes of the hierarchy could still make them audible if they increased the total enough to offset the -96 db. Study the following diagram to see the cumulative effect on the Voice Volume property when a Sound SFX object is embedded within other objects. For properties that have absolute value settings where relative offsets don t apply, things work differently. An example of one of these absolute values is an object s Output Bus Assignment, which you ll explore in the next exercise. 184

189 Lesson 5: Understanding Audio Signal Flow Now that you have an understanding of Actor-Mixers, you ll place all sounds directly associated with the main character into their own Actor-Mixer; however, you ll do this using a different approach. 6. Select the Die, Jump, Pain, Footsteps, and Heartbeat objects, and right-click one of these selected objects and then choose New Parent >Actor-Mixer. 7. Name the new Actor-Mixer Main Character. Using the Master Mixer Hierarchy In game play, it s not uncommon for fifty or more sounds to play simultaneously. Considering that the audio output of your computer most likely has only two output channels, left and right, Wwise must mix these signals together internally before reaching your computer s audio interface. You just learned that no actual mixing of audio occurs in the Actor-Mixer Hierarchy, so you may be wondering where mixing the various sounds together occurs. This is accomplished in the Project Explorer s Master-Mixer Hierarchy, an area you ve yet to explore, but you ll soon learn you ve been using it all along. Master Audio Bus In Wwise, a bus is a type of audio object where the actual summing of multiple audio signals into a new single audio path can occur. Busses do not appear 185

190 Lesson 5: Understanding Audio Signal Flow in the Actor-Mixer Hierarchy, but instead are available in the Master-Mixer Hierarchy. All Wwise projects have at least one audio bus found in the MasterMixer Hierarchy called the Master Audio Bus. All sounds that will be heard in the game will eventually flow through this Master Audio Bus. Let s take a look at this very important bus. 1. Select Items in the Default WorkUnit. See how the Items Actor-Mixer Output Bus is set to Master Audio Bus. Because this is set on the Actor-Mixer, it means that all contained objects have their outputs assigned to Master Audio Bus as well. In other words, imagine every sound object as a piece of audio equipment, with an audio cable that s connected directly to an audio mixing console that is called Master Audio Bus. Unlike conventional audio mixing consoles which are limited by the number of physical inputs they have, there is no practical limit to how many individual audio objects can be connected to a bus. Now take a look at the Master Audio Bus in the Master-Mixer Hierarchy. 2. In the Master-Mixer Hierarchy, expand the Default Work Unit and then select the Master Audio Bus. 186

191 Lesson 5: Understanding Audio Signal Flow In the Audio Bus Property Editor, you see an audio meter. Meters are something that aren t available in Actor-Mixers because no audio actually passes through an Actor-Mixer. Since the actual audio level metering is found on an audio bus, this confirms that audio in fact passes through the object. 3. Select any Sound SFX object in the Actor-Mixer Hierarchy, and then re-select the Master Audio Bus and play your object. 187

192 Lesson 5: Understanding Audio Signal Flow The meters display the overall sound level feeding the bus. Note If you have Wwise set up for surround sound playback, you may see a different meter layout. You may have noticed that there are two Volume controls. The Bus Volume control that also includes a volume fader represents the main master mix output. Adjusting this fader turns the summed signal coming from all sources feeding this bus up or down. The volume property as well as the Pitch and Low-pass filter properties found within the Voice do not act directly on the summed audio signal, but instead act as yet another set of offset controls which remotely impact any objects that are contributing to this bus. Because all objects ultimately feed the Master Audio Bus, adjusting any of these properties is like adjusting every single object in our project so be very careful with these. Submixing with Additional Audio Busses Just as you can nest objects within objects in the Actor-Mixer Hierarchy, you can nest audio busses within audio busses, including the Master Audio Bus. Using additional busses is useful when you want to quickly manipulate something about a particular category of sounds. For example, many games allow the player to set the volume of the music separately from the other sounds in the game. By bussing all music to a music bus, it s possible to map user input to the Music Bus Volume property. Another application of multi-bussing is applying effects such as delays or reverbs to a particular category of sounds, such as sound effects or dialogue, that are heard within the game s virtual environment. You ll use this multi-bus approach in your implementation of Cube. Note The Master Secondary Bus is used for devices that have secondary audio output paths such as the Sony PS4 s controller that includes a built in speaker. The Master Motion Bus is used in conjunction with Motion Effects such as rumble or vibration which are found in some game controllers. You ll begin by creating an environmental bus that you ll later assign the bulk of your sound Effects to. 1. Select the Master Audio Bus and click Create new Audio Bus. 188

193 Lesson 5: Understanding Audio Signal Flow 2. Name the new Audio Bus Environmental. Now you ll create a bus for the music used in the game. 3. Create another new Audio Bus within the Master Audio Bus and call it Music. Now you have a discreet music and environmental bus. This way, ambient Effects that you may later apply to the environmental bus won t affect the music. However, what if you wanted to provide the player of the game with the option of turning down Sound Effects, without turning down the critical dialogue, which might also be assigned to the Environmental bus? To do this, you simply add another bus specially for Sound Effects within the Environmental bus you already created. 189

194 Lesson 5: Understanding Audio Signal Flow 4. Select the Environmental Bus and click Create new Audio Bus. 5. Name the newly created bus SFX. Now your game s Audio Bus structure is ready. Audio Bus Assignments Although you ve created new busses, the objects in the Actor-Mixer Hierarchy are still assigned directly to the Master Audio Bus, so they ll need to be appropriately re-assigned. First, assign the Music Sound SFX object to the Music Bus. 1. Select the Cube Main Theme object and, in the Sound Property Editor's Output Bus group, click the browse [...] button to the right of the Master Audio Bus assignment. 190

195 Lesson 5: Understanding Audio Signal Flow 2. Expand the Default Work Unit and the Master Audio Bus, and then select the Music Audio Bus and click OK. All remaining sounds fall into the category of sounds that are found in the player s environment. There are a couple of Actor-Mixers that represent subcategories of that environment, so you can quickly reassign all of the bus outputs of those child objects by simply re-assigning the Output Bus designation of the top level Actor-Mixers. To make this process even faster, you ll use the Wwise powerful multi-edit feature, which lets you make adjustments to properties of multiple objects, even when they re not in the same hierarchy. 191

196 Lesson 5: Understanding Audio Signal Flow Tip You can also drag and drop a Bus object from the Project Explorer to the Output Bus box in the Property Editor s General Settings tab. 3. Press Shift, and select the remaining Actor-Mixers, and then right-click one of the selected objects and choose Multi-edit or press Ctrl+M.. 4. Expand the Audio, General Settings, Output Bus property areas and then click [...] Browse to the right of the Bus property (Master Audio Bus). 192

197 Lesson 5: Understanding Audio Signal Flow 5. In the Project Explorer - Browser, expand the Default Work Unit, Master Audio Bus and Environmental Bus, select SFX and then click OK. 193

198 Lesson 5: Understanding Audio Signal Flow All of the remaining objects are now assigned to the SFX Bus. In the next lesson, you re going to apply a Reverb Effect on all of the objects in the environment; however, a heartbeat wouldn t be loud enough in the room to hear it reverberate in that space. Because of this, you re going to re-route the Heartbeat sound so that it goes directly to the Master Audio Bus, avoiding the Environmental Bus altogether. For organizational reasons though, it makes sense to keep Heartbeat in the Main Character Actor-Mixer. You can achieve both by simply indicating that you want the Heartbeat Sound SFX object to override its parents bus assignment. 6. In the Main Character Actor-Mixer, select the Heartbeat Sound SFX object. 194

199 Lesson 5: Understanding Audio Signal Flow 7. In the Heartbeat s Sound Property Editor, click the Override parent check box. The Heartbeat object returns to the default Master Audio Bus assignment. 195

200 Lesson 5: Understanding Audio Signal Flow Note Clicking the Output Bus browse button to the right of the bus assignment lets you choose any bus available in the MasterMixer Hierarchy. Ducking An advantage of creating specific Audio Busses for different types of sounds, is that you can create dynamic relationships between those busses. One of the most common examples of this is called Ducking. Ducking is a way to make the volume of one audio signal path change depending on the volume of another audio signal path. A classic example of this is with radio DJs. When they talk into their microphone, the presence of signal on the microphone is used to automatically turn down the music so the DJ s voice can more easily be heard. When the DJ stops talking, the music is automatically turned back up. Ducking is a powerful feature in game audio and this feature, available on Audio Busses, is very easy to set up. In this case, you ll duck the volume of music when there s action in the game and you want to make sure the player hears the sounds you ve worked so hard to integrate. However, there are going to be times when the player just wants to hide out in a corner, standing still so there aren t any environmental sounds to be heard. In that case, you ll make the music come up in volume just a bit. You start by choosing the bus whose audio volume you want to use to control another bus. 1. In the Master-Mixer Hierarchy, choose the Environmental Bus. 196

201 Lesson 5: Understanding Audio Signal Flow Now you need to designate which bus you want to control with the Environmental Bus. 2. In the Auto-ducking area, click Insert. The Project Explorer - Browser window opens. 3. Expand the Master Audio Bus, select Music, and click OK. You now need to indicate how the volume of the Music bus will be affected when there is an audio signal on the Environmental bus. The default Volume change is -6 db, which is where volume changes just begin to become noticeable. You ll exaggerate the volume change just a bit more. 4. Set the volume property to

202 Lesson 5: Understanding Audio Signal Flow There are other properties such as Fade In and Fade Out that determine how much time passes between when a signal is detected on the bus, and the act of modifying the target bus occurs. The Target column currently indicates that the volume change is happening to the busses overall level; however, it can also be changed to Voice Volume. With Voice Volume selected, volume is subtracted from the Voice Volume property of each of the objects that contribute to the Music bus. Working with Effects Now that you re aware of the audio signal flow structure within Wwise, you can start to look at ways you can modify an audio signal at various points throughout the signal flow. You ve seen how pitch and filters properties can be used to change the way a sound is heard, but there are many more ways you can modify a sound using Effects Plug-ins. Effects Plug-ins provide numerous sound tools such as reverbs, dynamics processors, equalization, delays, and more. First, take a look at how a plug-in can be used to quickly modify a sound more to your liking after it s been imported into Wwise. Inserting Effects 1. In the Project Explorer, open the Items Actor-Mixer, and then choose and play the Teleport object. 198

203 Lesson 5: Understanding Audio Signal Flow The Teleport sound is played when the player goes through the teleporter, which instantly takes the player to another physical location on the map. The problem is that the teleport sound is a bit short in duration. To lengthen the sound and provide even more of a special effect, you ll add a delay or echo to the teleport sound. 2. In the Teleport Sound Property Editor, click the Effects tab. In the Effects area there are four rows, each of which holds any of the available effects plug-ins. They re not available because the Teleport object resides within the Items Actor-Mixer, so by default the Teleport inherits the 199

204 Lesson 5: Understanding Audio Signal Flow effects configuration from the Items Actor-Mixer. To uniquely configure effects for the Teleport object, you ll need to indicate that you want to ignore the parent object configuration. 3. Select the Override parent check box. 4. Click the selector button for Effect ID

205 Lesson 5: Understanding Audio Signal Flow The menu displays an extensive list of Effect plug-ins to choose from. Note While you can choose anything from the list, the Wwise Convolution Reverb or any of those that do not begin with Wwise, are third party plug-ins that involve additional licensing fees when the game is released. As you select an Effect, you may see an additional sub selection which represents presets for that particular plug-in. 5. Choose Wwise Delay > Delay > Echoes_Linear. 201

206 Lesson 5: Understanding Audio Signal Flow The Wwise Delay plug-in with the Echoes_Linear preset is inserted directly onto the Teleport sound object. The Prev. and Next arrows let you quickly cycle through the available Effect presets. 6. Play the Teleport object while clicking Next to audition different delay settings, finally selecting Delay\One_Tap_Quarter_Second. Presets can get you close to a desired sound, but in this case, the echo goes on a bit long. Adjusting the Effect properties allows you to dial in the exact sound you want. 7. Click Edit to open the Effect Editor. 202

207 Lesson 5: Understanding Audio Signal Flow The Wwise Delay properties are displayed. The available properties can vary dramatically depending on the complexity of the Effect plug-in. Tip One parameter that most Effects have is a Wet/Dry Mix. Setting this value to 0% means that no Effect is heard and only the original dry signal is heard. 100% means that only the Effect is heard. Adjust the Wet/Dry ratio to find the right blend for what you re trying to achieve. 8. Set the Feedback property to 25, and close the Effect Editor window. 203

208 Lesson 5: Understanding Audio Signal Flow This Effect is generated in real-time when the game is played. Applying Effects in real-time uses up the game system's CPU power when there are many different objects running various real-time Effects. To eliminate most of the CPU load, you can choose to render the Effect as a new audio file when you re-generate your SoundBank. 9. Select the Render check box. Using Auxiliary Sends An Auxiliary Send(Aux Send) is an additional output an object can use to send audio at a uniquely controlled volume to special bus called an Auxiliary Bus. One of the most common applications for Auxiliary Busses is to provide a way for a lot of different sources to have a special Effect such as a reverb or echo applied. The signal being sent to an Auxiliary Bus triggers the Effect which is then later combined with the unaffected-dry signal. 204

209 Lesson 5: Understanding Audio Signal Flow In Cube, the player moves in the world filled with pre-defined zones that represent types of ambient spaces. When the player enters one of these zones, the game can then send specialized Wwise calls that can be used to activate an Auxiliary Bus that s been set up with a corresponding ambient Effect like a large hall reverb. You ll now configure Wwise with a 'Reverb' Effect so that it can react in this way. First, create an Auxiliary Bus in the Master-Mixer Hierarchy where the 'Reverb' Effect will live. Since Reverb is part of the environment, you ll create this new bus within the Environmental bus you created earlier. 1. Select the Environmental Bus object and click Create new Auxiliary Bus. In game play, the ambient reverb Effects are particularly obvious as you walk through the various corridors within the game maps. 2. Name the new bus env_corridor. 205

210 Lesson 5: Understanding Audio Signal Flow Now that you have the Auxiliary Bus, you ll need to add the Effect plug-in that is used to generate the reverb. 3. Select the new Auxiliary Bus and select the Effects tab in the Property Editor. In the Auxiliary Bus Property Editor, you ll see that there s an Effect section with four positions where effect plug-ins can be installed. There are many different effect plug-ins available in Wwise. You ll now install a basic reverb to give a sense of space to all sounds that are heard within the environment. 4. In the Effects area, click the selector button for the first effect row, and choose Wwise RoomVerb > Rooms > Room_Small. 206

211 Lesson 5: Understanding Audio Signal Flow The Effect is now installed in the first slot. Effect plug-ins have various parameters that can be modified to tailor the sound. 5. Click Edit to the right of the Effect row. 207

212 Lesson 5: Understanding Audio Signal Flow You now see all the parameters that pertain to the Wwise RoomVerb plugin. Later when you start playing the game and hear the reverb, you can come back here and make adjustments to reverb settings like decay time and high frequency damping to tailor the room sound to your liking. Now you need to choose which of the Sound SFX objects in the Actor-Mixer Hierarchy will feed the signal to the small room reverb in the Auxiliary Bus you just configured. 6. Close the Effect Editor. 7. In the Actor-Mixer Hierarchy, select the Main Character Actor-Mixer, and display the General Settings tab in the Property Editor. 208

213 Lesson 5: Understanding Audio Signal Flow You now need to assign the Auxiliary Bus you want to send the signal to. There are two ways to do this. The first option is to manually assign this within Wwise. 8. In the first Auxiliary Bus row, click Browse. The Project Explorer opens displaying the Master-Mixer Hierarchy and any Auxiliary Bus objects that are available for selection. 209

214 Lesson 5: Understanding Audio Signal Flow 9. Select the env_corridorauxiliary Bus and click OK Tip You can drag and drop an Auxiliary Bus object from the Project Explorer to the User-Defined Auxiliary Sends list to quickly add a send. You ll now be able to hear the room reverb Effect you set up when you play any of the objects contained within the Main Character Actor-Mixer. 10.Select an object within the Main Character Actor-Mixer and listen for the reverb when you play it. If you want to increase or decrease the reverb Effect, you can turn the Volume control up or down to the right of the env_corridor assignment. 210

215 Lesson 5: Understanding Audio Signal Flow 11.Turn up the env_corridor volume and play the same sound again to hear the reverb. Note Now that you can hear the reverb, you can go back to the reverb plug-in settings you saw in step 4 and adjust them to your liking. The second way that an object can send a signal to an Auxiliary Bus is to have the game itself send messages to Wwise indicating what auxiliary bus a sound should be sent to and at what level. This is how Cube works. As you walk through the maps in Cube, the level editor has zones configured so that when the player enters the zone, the auxiliary send volume going to a specific auxiliary bus is turned up and when the player leaves the zone, it is then turned down. This creates a dynamic change to the reverb based on the player s physical position. To use this approach you need to first unassign env_corridor in the UserDefined Auxiliary Sends section. 12.Right-click the env_corridor assignment and choose Set to none. 211

216 Lesson 5: Understanding Audio Signal Flow To use Game-Defined Auxiliary Sends, all you need to do is activate them with a check box. 13.Select the Use game-defined auxiliary sends check box for all Actor-Mixers. Now, when playing the game, the objects contained within the Main Character Actor-Mixer are able to recognize the Wwise game calls that indicate when to turn the env_corridor auxiliary sends up or down. At the end of the lesson you ll play Cube and you ll be able to hear the reverb come in and out as you move through different areas of the map. 212

217 Lesson 5: Understanding Audio Signal Flow Tip The Volume control beneath the Use game-defined auxiliary sends check box is used to offset the values being transmitted from the game engine so that you can adjust to your liking without having to ask a programmer to make the adjustments for you. Using the Schematic View In this lesson you ve seen how the Actor-Mixer and Master-Mixer Hierarchies are bridged together by using Output Bus assignments. Because the two hierarchies are stacked on top of each other in the Project Explorer, it s not always clear how the bus objects in the Master-Mixer Hierarchy relate to the objects in the Actor-Mixer Hierarchy. To help see this relationship, Wwise provides the Schematic View. 1. In the main menu bar choose Layouts > Schematic or press F9. By default, the Schematic View shows the highest level within the Wwise signal flow structure, the Master Audio Bus. 213

218 Lesson 5: Understanding Audio Signal Flow Note The Master Secondary Bus is used for game systems that have secondary audio outputs, such as those that might be found within a game controller. In a similar way, the Master Motion Bus is used with devices that incorporate physical movement, like rumble features built into game controllers. By expanding the bus hierarchies, you can trace any sound back to its sound source. 2. Expand the Master Audio Bus. 214

219 Lesson 5: Understanding Audio Signal Flow 3. Expand the Music, Environmental, and SFXbusses. Solid lines represent the structure of how objects relate to each other as seen in the Project Explorer. Small dashed lines represent audio routing relationships between objects. You can clearly see how the Cube Main Theme Sound SFX object is routed to the Music bus, a relationship that s not so easy to see in the Project Explorer. Large dashed lines, like the one coming from the Heartbeat, indicate where an object has an output that overrides its parent s output. If you remember, you assigned the Heartbeat directly to the Master Audio Bus, even though it exists within the Main Character ActorMixer. 4. Expand the Main Character Actor-Mixer, and then expand the 'Die' Random Container, and finally the 'Die 1' Sound SFX object. Now you can see the SFX\Die 1 audio source file and as you read from right to left, you can trace its path all the way to the Master Audio Bus. You can quickly audition Sound SFX objects by simply selecting and playing them. 5. Select and play the Die 1 Sound SFX object. 215

220 Lesson 5: Understanding Audio Signal Flow As you listen to the sound, you ll find that making changes to common object properties without leaving the context of this powerful view can be very helpful. So, we ll add specific Properties beneath each object. 6. Click View Settings in the upper right corner of the Schematic view. 7. Select the Mute/Solo, Bus Volume, Voice Volume, Voice Pitch and Voice LPF check boxes, and click OK. 216

221 Lesson 5: Understanding Audio Signal Flow The properties that you selected are added below each of the objects. 217

222 Lesson 5: Understanding Audio Signal Flow Now you can quickly make adjustments to these common settings within the Schematic View. 8. Make any changes you d like to the displayed properties. 9. Generate the SoundBank and play the game. Be sure to listen for the changes you made, and find the areas in map where you can hear the reverb you created come in and out. A defined environment that will trigger the reverb is found in the short corridor to the right just as the game begins. 218

223 Lesson 5: Understanding Audio Signal Flow As you enter the corridor, the lower right corner displays env This is the ID number of the environment that sends a signal to Wwise to turn up or down the game defined auxiliary send you configured earlier in the game. Tip The sound of the reverb in the hallway is subtle, as it should be. Jump up or down in the hallway and you can more easily hear the reverb on the grunt sounds your character makes. If you still have a hard time hearing the Effect, go back to the Wwise project and turn down the music so it s more easily heard. 219

224 Lesson 6: Finalizing the Mix Using Soundcaster Configuring a Mixing Desk Using Control Surfaces

225 Lesson 6: Finalizing the Mix There comes a point in game audio integration where the focus turns to the more subtle nuances of how the various sounds you ve integrated into the game work with each other. It s important that each sound contributes without becoming a distraction. This is where the art of mixing comes into play. Compare and contrast this process with how sound is mixed in movie production. In audio for movies, all of the audio is collected together and played through a large mixing console that provides the engineer with quick access to controls used to modify hundreds of channels of sound until they all seamlessly blend, creating a uniform soundscape that compliments the picture. You can recreate a similar workflow with Wwise when you create custom virtual mixing consoles where object properties can be viewed in the form of mixer strips like channel strips seen on audio consoles or in the mixer view of a digital audio workstation. Furthermore, you can assign these properties to physical knobs and faders of nearly any MIDI-based control surface, providing a tactile connection to the sound you re adjusting. This way you can manipulate multiple properties simultaneously to speed up your workflow. The major departure from a film-based workflow is that the engineer can simply click play on the project and all of the sounds will play according to when they occur on a timeline. Of course with video games there is no predetermined timeline sounds play based on when various events happen in the game. This makes testing how sounds interrelate to each other a bit more difficult. Using Soundcaster Until now, to play a sound, you have selected a corresponding object, such as a SFX Sound object, or an event object and clicked play in the Transport Control view. To try and play multiple objects at the same time would require that you quickly repeat that process multiple times trying to play additional sounds while the earlier ones are still heard. To make this a bit easier, it s possible to prearrange multiple instances of the transport view, each targeting a specific object so that you can quickly play different objects. You can do this using Wwise s Soundcaster feature. Creating a Soundcaster Session A finished game can have thousands of objects. It wouldn t be very helpful to pull up a screen with a thousand play buttons. You might get very confused trying to navigate to what you want to hear. Instead, you ll configure a preset layout of the objects you want to have quick access to. This preset is known as a Soundcaster Session. You can have as many Soundcaster Sessions as you like, allowing you to create and quickly recall custom transport layouts for sounds that relate to each other. 221

226 Lesson 6: Finalizing the Mix To start, you create a Soundcaster Session for the sounds that are directly connected to the actions of our hero, such as his footsteps and weapon sounds. This will allow you to quickly evaluate if the footsteps are at the right volume when he fires the shotgun. 1. Launch the Lesson 6 project. 2. In the main menu, choose Views > Soundcaster or click Shift+S. The Soundcaster opens. Toward the top of the window you see the transport controls, and just below you see areas displaying all of the game's States, Switches, and RTPCs that 222

227 Lesson 6: Finalizing the Mix you ve learned about in the previous lessons. You will also see Triggers, which are used for interactive music. Using these controls, you can quickly see how changing these values affects the sounds you re going to play. Below this section you see a blank area indicating that you need to create a new Soundcaster Session. 3. In the upper left, click the Selector menu [>>], and then click New. Note For the rest of this document, selector is used to indicate the Selector menu [>>] option. The New Soundcaster Session dialog box opens. Soundcaster Sessions are stored in Work Units found in the Soundcaster Sessions folder. Note You can view the Soundcaster Sessions Folder in the Sessions tab of the Project Explorer. 223

228 Lesson 6: Finalizing the Mix 4. Select the Default Work Unit, type Player, and click OK. Your new Soundcaster Session is created. The tab in the upper left corner of the Soundcaster now indicates that the Player Soundcaster Session is active; however, there still aren t any object transports displayed in the lower section of the window. If you look closely, you ll see dots that make up a grid where you can load objects that you want to play within this Soundcaster Session. Adding Objects to a Soundcaster Session Adding objects to a Soundcaster Session is a simple matter. Drag them into the Soundcaster window where you want them to appear on the grid. Start by 224

229 Lesson 6: Finalizing the Mix dragging the Death_Player event object from the Event Viewer into the upper left corner of the Soundcaster Grid. 1. Drag the Death_Player event from the Event Viewer into the Soundcaster Session. You can see that the object is represented with a small version of the Transport Control that you ve used in all of the previous lessons. The main advantage of the Soundcaster is that you can continue to add more objects into what you can think of as a multiple transport control area. 2. Play the Death_Player event by clicking the play button within its Soundcaster module. 3. Add the Foot_Player event to the Soundcaster Session. 225

230 Lesson 6: Finalizing the Mix Above the transport controls, you see areas that display the various Game Syncs such as States, Switches, and RTPCs. Notice how the Material switch appeared when you added the Foot_Player event. This is because this event contains a Switch Container, so the ability to change the switch value is provided for you to quickly change this value. 4. Play the Foot_Player Event and make adjustments to the Material type. Tip By default, Soundcaster only displays Game Syncs that correspond to objects that you ve loaded. You can force particular Game Syncs to appear by selecting the Show All buttons next to each Game Sync header. 5. Click Show All in the RTPCs area. 6. Add the Events from the following image to the Soundcaster Session. 226

231 Lesson 6: Finalizing the Mix 7. Experiment in playing the various event objects. Notice that on the right side of each object s Soundcaster module there are properties for Volume, Pitch, and LPF (Low-Pass Filter). No values are displayed in these fields because Event objects don t actually contain these properties. To adjust these properties, you will need to also include the various objects that are being triggered by these event objects. To see how this works, you re going to create another Soundcaster Session that you ll set up specifically to help you fine-tune sounds associated with the Rocket Launcher. 8. Click the selector menu, and choose New. 9. Name the new Soundcaster Session Rocket. 227

232 Lesson 6: Finalizing the Mix Using the rocket actually requires several Events: one to launch the rocket, one to end the rocket, and one to trigger the sound when it hits a monster. 10.Add the Fire_Rocket_Player, End_Rocket_Player and Hit_Rocket_Player Events to the Rocket Soundcaster Session. Since you added the Event objects, you still won t see an option to change the Volume, Pitch, or LPF properties. You have to now add the associated objects that are being triggered by these Events so you can make these adjustments. 11.From the Project Explorer s Actor-Mixer Hierarchy, add the Rocket Launcher, Explode, rlaunch, and Thrust objects on the second row of the Soundcaster Session. 228

233 Lesson 6: Finalizing the Mix Now you see the Volume, Pitch, and LPF properties displayed, but before you make an adjustment, you ll first re-organize how the object transports are laid out on the grid. 12.Move the Rocket Launcher Actor-Mixer object to the end of the first row, and move the Explode, rlaunch and Thrust objects to the left one space on the grid so that the sounds associated with each Event appear closer to the Event object that triggers it. 229

234 Lesson 6: Finalizing the Mix Tip Because Soundcaster lets you lay objects out in any way you choose, it does not usually reflect the hierarchy structure you see in the Project Explorer. For example, the Rocket Launcher Actor-Mixer actually contains the rlaunch, Explode, and Thrust objects, so making adjustments to the Rocket Launcher properties within Soundcaster is actually offsetting the property values for all of those other objects contained within. Now you re ready to fine-tune the rocket sounds. You can play the event objects sequentially from left to right to simulate what happens when the player launches a rocket. Listen closely to see if you think the sound of the thrust is balanced with the rocket launch sound, or the explosion. You can now quickly make changes to the sounds using the available property values. 13.Play the various objects and experiment with different Volume, Pitch, and LPF settings. Configuring a Mixing Desk The Mixing Desk is a flexible and powerful mixing console that groups a variety of properties into one view, allowing you to fine-tune the audio mix of your game. You can populate the Mixing Desk with the specific objects you want to work with and then define object routing, apply Effect and Attenuation curves, edit State properties, and modify the properties of individual objects and busses. To get acquainted, you ll first create a custom Mixing Desk that focuses on the rocket sounds used in Cube. Creating a New Mixing Desk The Mixing Desk view can be opened as a view, like most other windows in Wwise; however, it really comes to life when it works in conjunction with a Soundcaster Session, like the one you created in the last exercise. For this reason, a default layout called Mixer can quickly be recalled, which provides 230

235 Lesson 6: Finalizing the Mix a Soundcaster and Mixing Desk view as well as a Project Explorer and Event Viewer. 1. In the main menu choose Layouts > Mixer or click F8. The Mixer layout opens. You see the Rocket Soundcaster view you configured in the last exercise, with an empty Mixing Desk view just above. Just as with Soundcaster, you can create Mixing Desk sessions that act much like presets for objects you want to have mixing channels for. You ll create a Mixing Desk session that will complement the Rocket Soundcaster Session. 2. Click the selector, and choose New. Name the Mixing Session Rocket, and click OK. 231

236 Lesson 6: Finalizing the Mix A new Mixing Desk appears that currently only displays a list of available properties that will be displayed for any objects you add into the Mixing Desk. This is a big advantage over the limited number of properties that are displayed in the Soundcaster s modules. Adding Objects to the Mixer Objects are added to the Mixing Desk in the same way they were added into the Soundcaster, by dragging them in from the Project Explorer. 232

237 Lesson 6: Finalizing the Mix Note Because the Mixing Desk only displays properties from objects that directly affect how a sound is played, it is not possible to add event objects. 1. In the Project Explorer s Actor-Mixer Hierarchy, select the Rocket Launcher, Explode, rlaunch, and Thrust objects, and drag them into the Rocket Mixing Desk. The objects are added to the Mixing Desk and are represented by vertical mixer strips, similar to channel strips found on a conventional mixing console. 2. Scroll down the Mixing Desk View to see all of the available properties. 233

238 Lesson 6: Finalizing the Mix Tip You can customize which parameters you want to view by using the View Settings button in the upper right corner of the window. Unlike Soundcaster, you can add Audio Bus objects to the Mixing Desk allowing you to control every aspect of a sound source s signal flow. 3. In the Project Explorer s Master-Mixer Hierarchy, choose the Master Audio Bus and Environments Bus and drag them into the Rocket Mixing Desk. 234

239 Lesson 6: Finalizing the Mix Typically the final output of a mixing console appears at the far right of a mixing console. The order of the mixer strips can easily be rearranged to achieve this. 4. Drag the Master Audio Bus header to the right of the Environment Bus. 5. Play an object in the Soundcaster and see how the meter on the Master Audio Bus responds. If you start a capture session, you have more visual feedback including indicators to show which objects are currently active or which busses are being ducked. 6. Click Start Capture. 235

240 Lesson 6: Finalizing the Mix 7. In the Soundcaster window, play the Fire_Rocket_Player Event. Note The thrust sound continues to play until you play the End_Rocket_Player event. You can see the Activity icon (headphones) turn green when the object is being utilized. This can be extremely useful when trying to troubleshoot why a sound is not playing, as you can quickly see what objects are controlling the sound in its path to the Master Audio Bus. 8. Take a moment to experiment with manipulating various rocket properties displayed in the Mixing Desk. Tip When multiple objects are selected, modifying a property (slider or fader) affects the whole selection and sets the object's value to 236

241 Lesson 6: Finalizing the Mix all other objects in the selection. However, when holding the Alt key and dragging a slider or fader, the selected objects values are offset and not set to an absolute value. Creating Additional Mixing Desks Multiple mixing desks can be created and quickly recalled so that you can focus on specific parts of your game s mix. It s common to want to view all of your bus objects on a single screen, as they represent the last stages of your game s signal flow. Using their meters lets you see if the overall amount of signal feeding those busses is too high and lets you view the interaction between busses as with ducking. 1. In the Mixing Desk view, click the selector button and choose New. 2. Name the new Mixing Session Bus Masters, then click OK. 237

242 Lesson 6: Finalizing the Mix 3. From the Project Explorer s Master-Mixer Hierarchy, add the Master Audio Bus, Environment, SFX, env_corridor, and Music busses to the Bus Masters Mixing Desk. You now have a Mixing Desk devoted to working with your bus masters which you ll use in the next exercise. Working with States A very useful feature of the Mixing Desk is that it can quickly allow you to create different mixes based on the status of game states. In Lesson 3 you learned how to use game States on an object level to affect the sound of the player s heartbeat. You ll now see how a State can be used to modify an Audio Bus object and how the process of configuring and testing the State can be done entirely from the Mixing Desk view. 238

243 Lesson 6: Finalizing the Mix The goal is to set up a mix so that when the player dies, the Environmental sounds get quieter and less present, while the music is unaffected. Before you start, take note that there is an Editing States area at the top of the mixer, but there is nothing contained in the corresponding box. This is because none of the objects in the mixer are currently controlled by a change in a state s value. 1. Double-click the Environmental mixer strip s header. A floating Environmental Bus Property Editor opens. 2. Click the States tab, then add the PlayerLife State Group. 239

244 Lesson 6: Finalizing the Mix The State Group (and its States) is added to the Environmental bus where property values could be set as you did in Lesson 3. This time, however, rather than adjusting the properties in this Property Editor, you ll do so from the Mixing Desk instead. 3. Close the Property Editor window. Notice how the Editing States area now displays PlayerLife with a pulldown menu displaying the current State value. In addition, the State s offset values are added to the mixer strip, but you probably can t see them. 240

245 Lesson 6: Finalizing the Mix 4. Change the PlayerLife State to Dead and then scroll down and adjust the Bus Volume to -8 and Low-pass filter value to 65. The State offset values you ve just applied only occur when the player is dead. To see the values used when the player is alive, you simply switch the State pull-down menu back to Alive. 5. Change the Playerlife State to Alive. 241

246 Lesson 6: Finalizing the Mix Notice that the Bus Volume and Voice Low-pass Filter settings go back to the values that are associated with the 'Alive' State. Tip The Follow States button can be used when you connect to the game and start a capture session to automatically switch the States according to the current State value of the game while it s played. The Push States button can be activated to allow Wwise to tell the game what State to enter, such as force the game to behave as if players were dead even though they may not have died in the game. This can be very useful when trying to test mixes without having to go through the game play necessary to achieve a particular State within the game. Using Control Surfaces As you ve learned, using Soundcaster and Mixing Desk views can help you to more quickly play sounds and modify properties that affect those sounds. The one limiting factor is that regardless of the amount of Mixing Desk channels or Soundcaster transports you might see, using a computer pointer only provides you with the ability to actively engage one parameter within Wwise at one time. To go beyond this limitation, you can dramatically enhance your productivity by using an external MIDI-based controller as an alternate input device. Wwise allows you to map multiple object properties and other Wwise commands such as Play, to multiple physical controls such as knobs, faders, and buttons found on common MIDI control devices. If you have an external MIDI controller connected to your computer, learn how this is accomplished in this final exercise of this lesson. Note You may need to save your Wwise Project and restart it again after you connect your MIDI controller to your computer. In this exercise a Korg Nano Kontrol surface is used for demonstration, but any recognized MIDI or Mackie Control controller will work. Configuring a Controller You first need to make Wwise aware of which external MIDI device you intend to use as a control surface. 1. From the main menu choose Project > Control Surface Devices. 242

247 Lesson 6: Finalizing the Mix 2. Click Add to add a new device. You can now give a name to the controller you intend to use. 3. Name your device My Controller, and click OK. 243

248 Lesson 6: Finalizing the Mix A new entry is created. By default, the device type is set to MIDI, meaning that the device transmits or receives conventional MIDI messages, which is what you want for basic parameter control. You now need to associate the actual hardware device for the entry you just named. Since you re only going to be transmitting MIDI information from the controller to Wwise, you only need to set the device using the pulldown menu in the Receive From column. 4. Click the pulldown menu in the Receive From field and select your controller. Note For demonstration purposes, a Korg nanokontrol hardware controller was used; however, your controller is probably different. Choose what is appropriate for you. If no controller appears, it is because your computer and / or Wwise has not recognised that they are connected. Once your selection has been made, you should see that the Status column indicates that the device is connected and you re ready to proceed. 5. Click Close. 244

249 Lesson 6: Finalizing the Mix Mapping Hardware Controls to Properties and Commands You use the Control Surface Session to map Wwise features you want to use on specific external MIDI input sources. 1. In the Project Explorer, select the Sessions tab. The Control Surface Sessions folder holds control surface configuration settings within a Work Unit. 2. Expand the Default Work Unit found in the Control Surface Sessions folder. A Control Surface Session called Default Control Surface Session appears. Control Surface Sessions are where you map how your control surface relates to features within Wwise. 3. Double-click the Default Control Surface Session object. 245

250 Lesson 6: Finalizing the Mix The Control Surface Binding window opens. Bindings link a particular function within Wwise to a particular MIDI control found on your control surface. Bindings are actually found within folders and there are different folders that impact the scope of parameters that will be available. For example, within the Global folder, it is possible to bind a particular MIDI control to a particular property of an object regardless of which object is selected in the user interface. This is helpful when you want to always be able to control the volume of the player s gun shot sound with a fader regardless of what other object you may have currently selected. In this case, you are going to set up a fader on your MIDI controller to quickly control the voice volume of whichever object you have selected. This is accomplished within the Current Selection folder. 4. Expand the Current Selection folder. Within the Current Selection folder, you ll see that there is a default binding that allows incoming MIDI notes to pass on to the currently selected object. This is particularly useful with the Synth One synthesizer object that can be played as a musical instrument. You can also bind a MIDI control to object properties as well as object commands such as Play or Stop. In this case, you ll bind a fader on your control surface to the currently selected object s voice volume property. 246

251 Lesson 6: Finalizing the Mix Note If your control surface does not have a fader, a knob or modulation wheel works just as well. 5. Select the Current Selection folder and click the Add & Learn Binding button in the lower left corner. A new Binding appears within the Current Selection folder. Notice that the field under the Controller Assignment column is empty for this binding. That is because you have not yet taught Wwise which controller you intend to use. The green Learn button indicates that the binding is ready for you to choose which physical component of your MIDI controller you want to bind to a particular function within Wwise. 6. Move the fader on your controller. 247

252 Lesson 6: Finalizing the Mix In the controller Assignment column, the binding now displays the specific MIDI channel and MIDI continuous controller number that the binding will respond to. Now you need to indicate what feature within Wwise that you want to respond when you move this same fader. 7. To the right of the green Learn button, choose the selection menu button and select Object properties. The Property Selection dialog box opens. 248

253 Lesson 6: Finalizing the Mix There are many different features in Wwise that can be controlled, so they are arranged in various categories and sub categories. 8. Expand the Audio property, then General Settings property; choose Voice Volume, and then click OK. 249

254 Lesson 6: Finalizing the Mix You have now defined what you want to control. Now you need to define what MIDI control you want to use to control the object s voice volume. 9. Close the Property Selection window. 250

255 Lesson 6: Finalizing the Mix You now see in the Control Surface Bindings window, and that Voice Volume is the property that will be controlled on the currently selected object when it receives the appropriate MIDI message from your controller. The Status column indicates that the binding is not active. This is because the last object you selected was the Default Control Surface session, which doesn t contain a voice volume property. 10.Close the Control Surface Bindings window, and then select the Shotgun_Blast SFX Object in the project and use your controller s fader to control its voice volume property. When connected to the game, Wwise provides the opportunity for real-time mixing from within the Wwise interface. This also means that if you have properties within Wwise mapped to a control surface, you can mix in a way similar to working on a conventional audio console. 11.First generate the SoundBanks for your game, and then launch Cube and connect to the game from within Wwise. 12.Experiment using your control surface to adjust the shotgun volume as you play the game. Also listen for the changes you made earlier in the game such as the volume and filter change in the Environment bus when the player dies. Tip Try mapping the most commonly adjusted parameters such as pitch and Low-pass Filter to as many knobs and faders as your surface supports to make quick work of adjusting properties while you focus on sound design. You can also assign faders of your surface to the various faders in your Mixing Session, giving yourself real-time physical control over your mix. 251

256 Lesson 7: Optimizing Your Game Managing Memory Processor Optimization Real-time Monitoring with Profiler

257 Lesson 7: Optimizing Your Game You can have the most amazing soundscape for a game, but that s irrelevant if it can t be rendered using the available resources in an end user s game system. For this reason, game audio integration is really an exercise in the art of doing more with less. Wwise provides powerful features that allow you to maximize efficiency when you integrate sound into your game without sacrificing creative and sonic integrity. In this lesson, you ll learn how to minimize the size of audio assets and conserve RAM and CPU usage. One of the most powerful aspects of Wwise is that up until now, you ve been able to focus on the creative side of things and not concern yourself with sound engine performance factors. Now you ll learn how you can scale a project to work within memory and performance budgets. Managing Memory For this lesson, you ll use a fully built, but not yet optimized version of Cube. 1. Open the Lesson 7 project and browse through the objects in the Project Explorer to get a sense of the objects used in the game. 253

258 Lesson 7: Optimizing Your Game Working With Multiple SoundBanks Many video games are based on levels and oftentimes there are sounds that are only associated with particular levels, such as the sound of fireworks that are only heard at your character s victory celebration when the highest level of the game is completed. It is unnecessary to load sounds into memory if the player has not reached that point in the game. In this build of Cube, there is an Actor-Mixer object called Map Voices that contains objects of spoken word phrases that are only heard in a level in Cube called dcp_the_core. 1. Expand the Map Voices Actor-Mixer and audition any of the Sound SFX objects contained within. Since everything within the Map Voices Actor-Mixer is only used for one particular level in the game, you have an opportunity to better manage 254

259 Lesson 7: Optimizing Your Game memory by adding these sounds into a SoundBank that is only loaded when the dcp_the_core level has been reached. 2. In the Project Explorer, select the SoundBanks tab. Unlike the projects used in previous lessons, this project has no SoundBanks at all. Every game needs at least one SoundBank, because it s the SoundBank that contains the audio assets as well as all the instructions for how the audio will be played. All of your previous projects have only used a single SoundBank; however, in this project you ll use two; one for the main sounds used throughout the game and another specifically used for the sounds used in a game level called the dcp_the_core. 3. Right-click the Default Work Unit and choose New Child > SoundBank. 4. Name the SoundBank Main. 255

260 Lesson 7: Optimizing Your Game Note Game programmers have to code the game engine to load the SoundBanks by name so it is imperative that your SoundBanks are named correctly. 5. In the same Default Work Unit, create another SoundBank called DCP_the_core. Now you re ready to specify which sounds are loaded with each of your SoundBanks. 6. In the main menu, choose Layouts > SoundBank or press F7. 7. In the SoundBank Manager, expand the Default Work Unit. You ll see the two SoundBanks you just created. 256

261 Lesson 7: Optimizing Your Game Each SoundBank has columns related to data size. Currently both SoundBanks have values of 0, because nothing has been assigned to the SoundBanks. There is also a Max Size column where you can assign a value expressed in bytes to designate what memory budget is expected for the SoundBanks. Budgets are often dictated early on in the game development process but can change over the course of development. It s important to know what your budget is and stick to it, because any memory resources you use are no longer available for other aspects of the game such as graphics. Setting a Max Size budget does not technically constrain you to that value, but it does give you a visual warning when you exceed the budget. 8. Set the Main SoundBank s max size value to 9,000,000 and the DCP_the_core size to 6,000,000. Now you need to assign objects to the SoundBanks. Remember from earlier lessons that this is done by dragging Events and/or objects into the SoundBank to ensure that the necessary audio assets are automatically part of that SoundBank. You need to identify the Events that are only triggered in the dcp_the_core level. Fortunately, this is made easy for you as level-specific Events have a unique prefix indicating they re specifically used in a particular level. 9. Select all of the Events with a DCP prefix and drag them to the DCP_the_core SoundBank. 257

262 Lesson 7: Optimizing Your Game Note In previous lesson projects, the 'DCP_Music' Event was placed within the Main SoundBank, allowing you to hear the Music Track in all of the game levels. However, in this lesson, you re placing the DCP_Music event into the DCP_the_core SoundBank, which is only loaded when the specific game level used at the end of this game is loaded. This means that you will not hear the music if you play game levels other than the level used later in this lesson. The data size of the DCP_the_core does not yet increase. This is because you have yet to generate the SoundBank, which you ll do after you populate the Main SoundBank. 10.Drag all of the remaining Events into the Main SoundBank. 258

263 Lesson 7: Optimizing Your Game Tip In the Event Viewer, select the Death_Bauul, then scroll to the very end of the list, hold Shift and click the very last Event, WeapLoad, to quickly select all of the Events you need in one step. You now need to identify which SoundBanks you want to generate. 11.Select the check boxes for the Main and DCP_the_core SoundBanks as well as the Windows (or Mac, if you re running this on a Macintosh computer) platform and English language. 12.Click Generate. 259

264 Lesson 7: Optimizing Your Game A progress view is displayed that shows the progress as the system discovers and then converts all of the audio assets needed to play the Events you just added to the SoundBanks. 13.Close the Generating SoundBanks window. You will see that the data size of both SoundBanks have exceeded their budget, and the free space is shown as a negative number in red. This indicates how many bytes of data you need to reduce each SoundBank by to meet your budget. 260

265 Lesson 7: Optimizing Your Game Create Conversion Settings You now have the task of trying to figure out how to reduce the size of your SoundBanks. There are various strategies for this and one of the most effective is to convert the.wav audio files that you imported into the project into another form that takes less space. This could be done by reducing the sample rate, reducing the number of channels such as downmixing it to mono, or even converting to another file type altogether. While this usually means that there will be a reduction in sound quality, that s a compromise you may have to take. The beauty of Wwise is that you didn t have to worry about making these conversions during the import process, allowing you to fully assess the situation and make these conversions as needed, when needed. While it s possible to convert files one at a time, you ll usually decide on Conversion Settings that apply to the bulk of your sounds and apply them all together. To do this, you ll create a Conversion Setting ShareSet that serves as a preset that you can apply to audio objects. 1. In the Project Explorer click the ShareSets tab. 2. Select the Conversion Settings Default Work Unit and click Create new Conversion Settings. 261

266 Lesson 7: Optimizing Your Game The bulk of your sounds consist of general sound Effects, so you can create a Conversion Setting that generally applies to those types of sounds. 3. Name the Conversion Settings ShareSet SFX. Tip Additional Conversion Settings ShareSets can be created for other types of sounds. For example, dialogue has a limited frequency range which provides an opportunity to use lower sample rates with little noticeable effect. You also may want to 262

267 Lesson 7: Optimizing Your Game treat music elements differently as it is full frequency and we tend to be very sensitive to poor audio quality. Assigning Conversion Settings Now that you have a Conversion Settings ShareSet for your project, you can assign it to objects in your project hierarchy. The assignment of Conversion Settings ShareSets, like other object properties, are inherited from parent to child. This means that if you assign a Conversion Settings ShareSet to an Actor-Mixer, all containers and objects below it will automatically use the same ShareSet. 1. Switch to the Designer layout and in the Project Explorer, click the Audio tab and select the Weapons Actor-Mixer. 2. In the Property Editor, select the Source Settings tab. 263

268 Lesson 7: Optimizing Your Game In the Conversion Settings group box, there is a mode setting set to Define Custom. Define Custom is used when you want to apply a unique conversion setting that you do not have a ShareSet for. Since you have created a ShareSet, change the Mode parameter to Use ShareSets. Note New objects are set to Use ShareSets by default. 3. Select the Mode parameter and choose Use ShareSets. 4. Click the selector to reveal the list of the ShareSets you created and select SFX. 264

269 Lesson 7: Optimizing Your Game Now you need to adjust the conversion parameters of this SFX Conversion ShareSet. 5. Click Edit to the right of the SFX ShareSet. The Conversion Settings Editor opens. The upper part of the window shows conversion parameters that are applied to any objects assigned to this ShareSet. The lower part of the window displays a list of the objects currently assigned to the ShareSet along with details about the audio files such as how many channels they are, their sample rate, and most importantly their original file size. Notice that some of Audio Source names appear in Blue and their Converted Size column value is empty. This is because the conversion process has not yet been applied to these files. The audio sources that appear in white were 265

270 Lesson 7: Optimizing Your Game already converted when you generated your SoundBanks earlier in this lesson. Note If you don t see the Audio Source names in the far left column, you can expand that column s width by dragging the right edge of that column header. There are a variety of conversion processes that can be applied to an audio file to help reduce its size. Converting stereo channels to mono or lowering the sample rate can help to reduce file size but can also create obvious changes in how the audio sounds. Another option is to change the format. By default, audio imported into Wwise is typically a PCM file, which means that there has been no data compression applied to the file. Data compression like that used with MP3 files can greatly reduce a file s size, and depending on how it is applied, may be barely noticeable. While Wwise does not provide MP3 compression as an option, it does provide Vorbis compression which is very similar, although many would argue sounds better and has become a standard in game audio integration. The one consideration is that if a file is compressed, then the game system must decompress it to play it, putting an additional load on 266

271 Lesson 7: Optimizing Your Game the system s processor. This is where you must take into account the benefits of file size vs. processor usage. In this case you ll go ahead and use Vorbis compression. 6. Click the Format pull-down menu for both the Windows and Mac formats and select Vorbis. The Audio Sources turn blue indicating that they have yet to be converted to your newly selected Conversion Setting. A quality property value, which is specific to the Vorbis option is displayed. This represents the quality of sound that will result after the Vorbis conversion on a scale from -2 to 10 with -2 being lowest. While higher values represent better sound quality, it also means less data reduction will occur. A value of 4 is a good starting point because it dramatically reduces file size while providing acceptable sound in most situations. You ll now need to apply the setting. 7. Click Convert to apply the Conversion Settings. Note Generating a SoundBank also applies the Conversion Settings. 267

272 Lesson 7: Optimizing Your Game The Audio File Conversion dialog box opens verifying which game system platforms you want to apply. 8. Choose the option appropriate for your system and then click OK. After a brief bit of processing, the audio filenames in the file list change to white, indicating that they have all been converted. You can now also see the converted file size. The Vorbis conversion has reduced most file sizes by 70-80%, a huge saving in space. 268

273 Lesson 7: Optimizing Your Game To see how this impacts your memory budget for your Main SoundBank, you need to generate the SoundBank. 9. Close the Conversion Settings window, then go back to the SoundBank layout and click Generate. You can see that Main SoundBank meets the memory budget; however, the DCP_the_core SoundBank is still way over budget. You ll address this later. Note After you have created the Conversion Settings ShareSets for your project, you can specify which one you want to use as the default. The default conversion settings ShareSet is used when a new object is created, but will only be used if the new object is a top-level parent object. If the object has a parent, it will inherit the parent s conversion settings. If an object has not been assigned a conversion settings ShareSet, the default ShareSet will be used to convert the object when the SoundBanks are generated. The default ShareSet is assigned in the Source Settings tab of the Project Settings. Comparing Converted Audio Although saving memory is generally a good idea, it s not good if the audio quality suffers so much that it s distracting. Wwise provides an easy way to compare your converted audio with the original audio you first brought in. 1. Go back to the Designer Layout and, in the Event Viewer, choose the Jump Event and play it a few times. 269

274 Lesson 7: Optimizing Your Game As you play the Jump Event, you re hearing the original unconverted versions of the grunt sounds. This is because the Original button in the upper left corner of the transport view is selected. 2. Turn off the Original button in the Transport and play the same Jump Event. Now you re hearing the result of your conversion. Comparing between the original and the converted version is as simple as clicking the Original button. Note Objects displayed in blue indicate that the associated audio file has not been converted. In this event you won t be able to play that object without the Original button being selected. Including or Excluding Audio In some cases, compressing files may simply not be enough to get your memory footprint low enough and you may need to remove certain audio elements from the game altogether. It wouldn t make sense to remove an audio file that represents the only sound available for an item, such as the gunshot. However, in cases where multiple audio files have been used as part of a Random Container, you may find that removing a few from that pool of sounds may not be noticeable and help get you under budget. Rather than deleting objects, you can simply exclude them from the build of a SoundBank by clearing the check box that appears next to every object in the Project Explorer. 1. Find the Random Containers Jump and Pain and clear the check box of some included SFX objects. 270

275 Lesson 7: Optimizing Your Game When an object is de-selected, it is treated as if it was never put in there in the first place. 2. Play the Jump and Pain Random Containers. While there may not be as much variety when these objects are played, the variety is still good enough and the container uses less memory. Streaming Another way to reduce memory is to not load the entire audio file into the game system s RAM all at one time. Instead, streaming provides a way in which the audio can be played directly from the stored memory such as an optical disc or hard drive. This option provides game developers with another strategy for 271

276 Lesson 7: Optimizing Your Game how they can manage memory. The use of streaming varies depending on the technical needs of each game, but streaming is particularly effective for large audio files that can be several minutes long, such as music. The downside of streaming is that when the game engine calls for the sound, there may be a pause before the sound starts playing because it takes time to locate the file and begin the stream. This would not work well for a gunshot, but would be fine for things like continuously playing ambience or music. Another limitation of streaming is that there are technical limits to the total amount of data that can be read from the stream at one time and it s possible that there are other aspects of the game such as video that may be competing for bandwidth on that stream. For Cube, streaming provides a way to fix the issue of the DCP_the_core SoundBank being over its memory budget. Remember that the Cube Main Theme music is triggered by the DCP_Music event, added earlier in this lesson to the DCP_the_core SoundBank, which is currently over its memory budget. Streaming the music is a great way to reduce memory usage and it does so without changing the sound quality. 1. In the Designer layout, choose the Cube Main Theme object and make sure that the Property Editor s General Settings tab is selected. 2. In the Property Editor select the Stream check box. Other streaming properties now appear, but it s not necessary to change these parameters unless you want to minimize the latency it takes to start the stream. 272

277 Lesson 7: Optimizing Your Game To see the memory savings you have acquired by not including some objects as well as streaming, you need to generate your SoundBanks in the SoundBank layout. 3. Choose the SoundBank layout and click Generate. You can see that streaming the music has had a significant impact as the DCP_the_core SoundBank, which was over 29,000,000 bytes, is now under budget at less than 6,000,000 bytes. Processor Optimization In game play, every time a sound is to be played, a small amount of processing power is required from the game system s CPU. While audio puts a relatively small load on the processor, consider that the processor must be shared with other aspects of the game such as 3D graphics rendering that can put tremendous stress on the system. For this reason, you need to be aware of how to maximize the audio engine s use of the processor and not waste processing cycles unnecessarily. Every sound played in game requires something called a voice through which it is played. Do not confuse this with the Voice object mentioned earlier in this lesson that is used with dialogue. In this case, you can think of a voice as the logical mechanism that produces the sound in the game. Every active voice uses processor cycles. In some games, especially 3D world games like Cube, voice counts can quickly add up. If you have your character firing a weapon at 30 bad guys who are all firing their weapons back simultaneously, these sounds, plus the sound of all of their footsteps and all of the other background ambient sounds, can quickly add up the voice count. The fact is that a lot of those sounds are not important to hear. The bad guys walking 100 meters away might have footsteps quietly playing the distance, but those are not likely to be heard when there are ten other bad guys two meters away firing their weapons. The distant footstep takes just as much processing power to play as the gun being fired two meters away, so to render sounds that are unlikely to be noticed is a waste of processing. To minimize this waste, your project has settings that define a minimum volume that the sound would need to actually render the sound through a voice. 1. In the main menu, choose Project Settings and select the General tab. 273

278 Lesson 7: Optimizing Your Game You can see settings can be configured differently depending on the game system that you are developing for. For example, a Wii U has considerably less processing power than a PlayStation 4, so you adjust these values separately for each game system. The default setting for Volume Threshold is -80, which is a value in decibels. This means that there s 80 db of dynamic range in the game. If you wanted to relax the load on game system s processor, you could reduce the dynamic range by changing the Volume Threshold to a higher number, but be aware that if you do this, there is a risk that some sound that you want to hear, such as subtle ambience may end up getting cut off. There is also another parameter that defines the maximum number of voices that are allowed to play through the system at any one time. This prevents overloading the system altogether. Lowering this parameter ensures that the audio engine will require less processing on the CPU, but again it means that some sounds you want to hear may get cut off, especially in the heat of battle when there s lots of action going on. Nothing is worse than when the game is at its most intense level, and you lose the sound of your main weapon, effectively taking you out of the experience. Don t worry, you ll learn how to prioritize voices later in this exercise. 2. Change the Volume Threshold for your system to -50, and set the Max Voice Instances to 40, and click OK. 274

279 Lesson 7: Optimizing Your Game Some sounds by nature can be real voice hogs. In Cube, some of the weapons like the chain gun can quickly create a lot of voices as the sounds of each shot overlap each other due to the rapid fire nature of the gun. To help manage this, it s possible to manage how many voices any one object might take at any one point in the game. 3. Go back to the Designer layout and, in the Project Explorer, select the Weapons Actor-Mixer and, in the Property Editor, click the Advanced Settings tab. The Playback Limit area allows you to set the total number of voices that can be used. You can set this so that the limit number applies to each game object, meaning that each character would have 50 voices available for their particular weapon, or it can be set globally, meaning that no more than 50 weapon sounds of any one type would be heard at the same time. The latter can be quite useful, as it is unlikely that the player would be able to distinguish much more than a few handfuls of sounds of the same type played at the same time. 4. Select the Limit sound instances to check box, set the instance value to 25, and select Globally from the pull-down menu. 275

280 Lesson 7: Optimizing Your Game There are some sounds that you want to make sure never get killed regardless of what is happening in the game. To accommodate this, Wwise has a voice prioritization system where you can rank types of sounds according to how important it is to hear them in the game. This way, when the game system must kill voices, it doesn t silence the sounds that truly need to be heard. A good example of a sound you wouldn t want to unexpectedly turn off would be things like player dialogue or music. In this case, you ll protect the music object by giving it a high voice priority number. 5. Choose the Cube Main Theme object and change its Priority value to 80. Now it s nearly impossible for the music to ever be inadvertently turned off during game play. Tip The Offset priority check box and setting specifies a value by which the priority of an object is offset when it reaches the max distance value specified in the Attenuation Editor. This is helpful for prioritizing objects such as footsteps that need priority when they are close to the listener, but are less important when they are far away. 276

281 Lesson 7: Optimizing Your Game Tip Also in the advanced settings is the Virtual Voice area. Virtual voices represent sounds that would normally play, but they are instead added to the virtual voice list because their volumes are lower than the Volume Threshold set for the platform. The virtual voice list is a virtual environment where certain parameters of a sound are monitored by the sound engine. Sounds may move from the audible physical voice to the silent virtual voice and vice versa based on their volume levels. If the volume returns above the Volume Threshold or the number of playing sounds goes under the limit of simultaneous playing sounds, the objects automatically move back into the physical voice. Real-time Monitoring with Profiler Now that you have made some adjustments for both memory and processor considerations, it is time to verify that things are working as they should. You can confirm this using the Profiler to monitor live game play, just as you ve used the Profiler in earlier lessons. For any of the changes to work however, you need to generate your SoundBanks. 1. In the SoundBanks layout, click Generate to create the SoundBanks with the changes you have made. 2. Launch the Profiler build of Cube. 3. In Wwise, connect with Cube running on your computer and start a capture. You created a SoundBank specifically for the DCP_the_core level which contains sounds such as music that are unique to this level, so you ll want to play this level for testing. This will also verify that your DCP_the_core SoundBank you created is working properly. 4. In Cube, press the escape key. 277

282 Lesson 7: Optimizing Your Game The Cube menu is displayed. 5. Choose singleplayer.. 278

283 Lesson 7: Optimizing Your Game 6. Choose start SP map

284 Lesson 7: Optimizing Your Game 7. Choose map dcp_the_core/enter. The game level begins. 280

285 Lesson 7: Optimizing Your Game When the game starts, you immediately hear a mysterious background ambience. This is actually the Cube Main Theme object playing, so you know the DCP_the_core SoundBank you created loaded correctly. 8. In the Wwise profiler layout, use the Remote button in the toolbar to make a connection with the game as you did in the Installation of Wwise. Once the connection is established, you see multiple graphs in the lower part of the screen. The top graph shows CPU usage. You see it move as the audio action gets more intense. Below that is a graph indicating the total number of streams and the amount of bandwidth being used when pulling the streams data from the stored file. This represents your Music Track playing. Tip Move the Performance Monitor time cursor back and forth to review the history of the sound engine performance over the course of game play. You will be able to see the exact moment you started the DCP_the_core level and the music stream started. The bottom graph shows memory usage, which is very low, and should be fairly consistent as the bulk of your sounds are loaded into memory when the game starts. 281

286 Lesson 7: Optimizing Your Game It s always a good idea to capture gameplay and review these graphs. Look for spikes that do not seem like they correlate appropriately with game play. In some cases, there may be some things happening in the background that you may not be able to discover without having these Profiler views. Tip The bands in the performance monitor can be customized so that you can quickly view the parameters you are interested in. Right-click over any of the bands and choose performance monitor settings to view a list of items such as Number of Voices and Total Plug-in CPU usage that can be added to the display. 282

Annex IV - Stencyl Tutorial

Annex IV - Stencyl Tutorial Annex IV - Stencyl Tutorial This short, hands-on tutorial will walk you through the steps needed to create a simple platformer using premade content, so that you can become familiar with the main parts

More information

Wwise-251 Certification Course 7 Lessons, 7 Quizzes, 1 Exam Wwise

Wwise-251 Certification Course 7 Lessons, 7 Quizzes, 1 Exam Wwise Wwise-251 Certification Course 7 Lessons, 7 Quizzes, 1 Exam Wwise 2017.2.2 Revision 573 Our seven lessons cover all you need to get your Wwise-251 certification. We re also providing you with seven quizzes

More information

M-16DX 16-Channel Digital Mixer

M-16DX 16-Channel Digital Mixer M-16DX 16-Channel Digital Mixer Workshop Using the M-16DX with a DAW 2007 Roland Corporation U.S. All rights reserved. No part of this publication may be reproduced in any form without the written permission

More information

Wwise Fundamentals

Wwise Fundamentals Wwise 2012.1 Fundamentals Wwise 2012.1 Wwise 2012.1: Fundamentals Wwise 2012.1 Build 4189 Copyright 2012 Audiokinetic, Inc. All rights reserved. Patents pending Wwise is a product of Audiokinetic, Inc..

More information

ROOMPLAYER GUIDE COMPLETE YOUR ROOMPLAYER SETUP WITH THE ROOMPLAYER DESKTOP APP

ROOMPLAYER GUIDE COMPLETE YOUR ROOMPLAYER SETUP WITH THE ROOMPLAYER DESKTOP APP ROOMPLAYER GUIDE COMPLETE YOUR ROOMPLAYER SETUP WITH THE ROOMPLAYER DESKTOP APP HELLO Once you ve connected your Roomplayer to your home network, downloading and installing the Roomplayer desktop app is

More information

Table of Contents. Creating Your First Project 4. Enhancing Your Slides 8. Adding Interactivity 12. Recording a Software Simulation 19

Table of Contents. Creating Your First Project 4. Enhancing Your Slides 8. Adding Interactivity 12. Recording a Software Simulation 19 Table of Contents Creating Your First Project 4 Enhancing Your Slides 8 Adding Interactivity 12 Recording a Software Simulation 19 Inserting a Quiz 24 Publishing Your Course 32 More Great Features to Learn

More information

2809 CAD TRAINING: Part 1 Sketching and Making 3D Parts. Contents

2809 CAD TRAINING: Part 1 Sketching and Making 3D Parts. Contents Contents Getting Started... 2 Lesson 1:... 3 Lesson 2:... 13 Lesson 3:... 19 Lesson 4:... 23 Lesson 5:... 25 Final Project:... 28 Getting Started Get Autodesk Inventor Go to http://students.autodesk.com/

More information

SAVING, LOADING AND REUSING LAYER STYLES

SAVING, LOADING AND REUSING LAYER STYLES SAVING, LOADING AND REUSING LAYER STYLES In this Photoshop tutorial, we re going to learn how to save, load and reuse layer styles! Layer styles are a great way to create fun and interesting photo effects

More information

Projects Connector User Guide

Projects Connector User Guide Version 4.3 11/2/2017 Copyright 2013, 2017, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on

More information

Kismet Interface Overview

Kismet Interface Overview The following tutorial will cover an in depth overview of the benefits, features, and functionality within Unreal s node based scripting editor, Kismet. This document will cover an interface overview;

More information

Live Agent for Administrators

Live Agent for Administrators Live Agent for Administrators Salesforce, Summer 16 @salesforcedocs Last updated: July 28, 2016 Copyright 2000 2016 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com,

More information

Getting Started. Pro Tools LE & Mbox 2 Micro. Version 8.0

Getting Started. Pro Tools LE & Mbox 2 Micro. Version 8.0 Getting Started Pro Tools LE & Mbox 2 Micro Version 8.0 Welcome to Pro Tools LE Read this guide if you are new to Pro Tools or are just starting out making your own music. Inside, you ll find quick examples

More information

DH HAIR MAKEUP. USER MANUAL updated May, ScriptE Systems, LLC

DH HAIR MAKEUP. USER MANUAL updated May, ScriptE Systems, LLC DH HAIR MAKEUP USER MANUAL updated May, 2017 ScriptE Systems, LLC READING THIS MANUAL 4 GETTING STARTED 4 CREATE A FILE 5 NAVIGATING THROUGH WINDOWS DH HAIR MAKEUP 5 ADD CHARACTERS & CHARACTER NUMBERS

More information

Kodiak Corporate Administration Tool

Kodiak Corporate Administration Tool AT&T Business Mobility Kodiak Corporate Administration Tool User Guide Release 8.3 Table of Contents Introduction and Key Features 2 Getting Started 2 Navigate the Corporate Administration Tool 2 Manage

More information

Overview. The Game Idea

Overview. The Game Idea Page 1 of 19 Overview Even though GameMaker:Studio is easy to use, getting the hang of it can be a bit difficult at first, especially if you have had no prior experience of programming. This tutorial is

More information

Getting Started Pro Tools M-Powered. Version 8.0

Getting Started Pro Tools M-Powered. Version 8.0 Getting Started Pro Tools M-Powered Version 8.0 Welcome to Pro Tools M-Powered Read this guide if you are new to Pro Tools or are just starting out making your own music. Inside, you ll find quick examples

More information

e-bos TM Version 2.1.x PowerPlay User s Manual June BOS TM 2.1.x Page 1 of 59

e-bos TM Version 2.1.x PowerPlay User s Manual June BOS TM 2.1.x Page 1 of 59 e-bos TM Version 2.1.x Page 1 of 59 Important Notice This guide is delivered subject to the following conditions and restrictions: This guide contains proprietary information belonging to BK Entertainment.

More information

Welcome to JigsawBox!! How to Get Started Quickly...

Welcome to JigsawBox!! How to Get Started Quickly... Welcome to JigsawBox!! How to Get Started Quickly... Welcome to JigsawBox Support! Firstly, we want to let you know that you are NOT alone. Our JigsawBox Customer Support is on hand Monday to Friday to

More information

Live Agent for Administrators

Live Agent for Administrators Salesforce, Spring 18 @salesforcedocs Last updated: January 11, 2018 Copyright 2000 2018 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com, inc., as are other

More information

Recording guidebook This provides information and handy tips on recording vocals and live instruments at home.

Recording guidebook This provides information and handy tips on recording vocals and live instruments at home. Welcome to The Hit Kit s QuickStart instructions! Read on and you ll be set up and making your first steps in the world of music making in no time at all! Remember, you can find complete instructions to

More information

Live Agent for Administrators

Live Agent for Administrators Live Agent for Administrators Salesforce, Spring 17 @salesforcedocs Last updated: April 3, 2017 Copyright 2000 2017 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com,

More information

Installation Instructions

Installation Instructions Installation Instructions Important Notes: The latest version of Stencyl can be downloaded from: http://www.stencyl.com/download/ Available versions for Windows, Linux and Mac This guide is for Windows

More information

CONCEPTS EXPLAINED CONCEPTS (IN ORDER)

CONCEPTS EXPLAINED CONCEPTS (IN ORDER) CONCEPTS EXPLAINED This reference is a companion to the Tutorials for the purpose of providing deeper explanations of concepts related to game designing and building. This reference will be updated with

More information

Legacy FamilySearch Overview

Legacy FamilySearch Overview Legacy FamilySearch Overview Legacy Family Tree is "Tree Share" Certified for FamilySearch Family Tree. This means you can now share your Legacy information with FamilySearch Family Tree and of course

More information

This tutorial will guide you through the process of adding basic ambient sound to a Level.

This tutorial will guide you through the process of adding basic ambient sound to a Level. Tutorial: Adding Ambience to a Level This tutorial will guide you through the process of adding basic ambient sound to a Level. You will learn how to do the following: 1. Organize audio objects with a

More information

PING. Table of Contents. PING GameMaker Studio Assignment CIS 125G 1. Lane Community College 2015

PING. Table of Contents. PING GameMaker Studio Assignment CIS 125G 1. Lane Community College 2015 PING GameMaker Studio Assignment CIS 125G 1 PING Lane Community College 2015 Table of Contents SECTION 0 OVERVIEW... 2 SECTION 1 RESOURCES... 3 SECTION 2 PLAYING THE GAME... 4 SECTION 3 UNDERSTANDING THE

More information

The Games Factory 2 Step-by-step Tutorial

The Games Factory 2 Step-by-step Tutorial Page 1 of 39 The Games Factory 2 Step-by-step Tutorial Welcome to the step-by-step tutorial! Follow this tutorial, and in less than one hour, you will have created a complete game from scratch. This game

More information

Introduction to: Microsoft Photo Story 3. for Windows. Brevard County, Florida

Introduction to: Microsoft Photo Story 3. for Windows. Brevard County, Florida Introduction to: Microsoft Photo Story 3 for Windows Brevard County, Florida 1 Table of Contents Introduction... 3 Downloading Photo Story 3... 4 Adding Pictures to Your PC... 7 Launching Photo Story 3...

More information

Mbox Basics Guide. Version 6.4 for LE Systems on Windows XP and Mac OS X. Digidesign

Mbox Basics Guide. Version 6.4 for LE Systems on Windows XP and Mac OS X. Digidesign Mbox Basics Guide Version 6.4 for LE Systems on Windows XP and Mac OS X Digidesign 2001 Junipero Serra Boulevard Daly City, CA 94014-3886 USA tel: 650 731 6300 fax: 650 731 6399 Technical Support (USA)

More information

My Earnings from PeoplePerHour:

My Earnings from PeoplePerHour: Hey students and everyone reading this post, since most of the readers of this blog are students, that s why I may call students throughout this post. Hope you re doing well with your educational activities,

More information

iphoto Getting Started Get to know iphoto and learn how to import and organize your photos, and create a photo slideshow and book.

iphoto Getting Started Get to know iphoto and learn how to import and organize your photos, and create a photo slideshow and book. iphoto Getting Started Get to know iphoto and learn how to import and organize your photos, and create a photo slideshow and book. 1 Contents Chapter 1 3 Welcome to iphoto 3 What You ll Learn 4 Before

More information

First English edition for Ulead COOL 360 version 1.0, February 1999.

First English edition for Ulead COOL 360 version 1.0, February 1999. First English edition for Ulead COOL 360 version 1.0, February 1999. 1992-1999 Ulead Systems, Inc. All rights reserved. No part of this publication may be reproduced or transmitted in any form or by any

More information

Getting Started Guide

Getting Started Guide SOLIDWORKS Getting Started Guide SOLIDWORKS Electrical FIRST Robotics Edition Alexander Ouellet 1/2/2015 Table of Contents INTRODUCTION... 1 What is SOLIDWORKS Electrical?... Error! Bookmark not defined.

More information

Robotic Manipulation Lab 1: Getting Acquainted with the Denso Robot Arms Fall 2010

Robotic Manipulation Lab 1: Getting Acquainted with the Denso Robot Arms Fall 2010 15-384 Robotic Manipulation Lab 1: Getting Acquainted with the Denso Robot Arms Fall 2010 due September 23 2010 1 Introduction This lab will introduce you to the Denso robot. You must write up answers

More information

COMPUTING CURRICULUM TOOLKIT

COMPUTING CURRICULUM TOOLKIT COMPUTING CURRICULUM TOOLKIT Pong Tutorial Beginners Guide to Fusion 2.5 Learn the basics of Logic and Loops Use Graphics Library to add existing Objects to a game Add Scores and Lives to a game Use Collisions

More information

GameSalad Basics. by J. Matthew Griffis

GameSalad Basics. by J. Matthew Griffis GameSalad Basics by J. Matthew Griffis [Click here to jump to Tips and Tricks!] General usage and terminology When we first open GameSalad we see something like this: Templates: GameSalad includes templates

More information

Intro to Pro Tools. Pro Tools LE and Eleven Rack. Version 8.0.1

Intro to Pro Tools. Pro Tools LE and Eleven Rack. Version 8.0.1 Intro to Pro Tools Pro Tools LE and Eleven Rack Version 8.0.1 Welcome to Pro Tools LE and Eleven Rack Read this guide if you are new to Pro Tools or are just starting out making your own music. Inside,

More information

WORKING WITH AUDACITY

WORKING WITH AUDACITY WORKING WITH AUDACITY Recording With Audacity Editing Sound Exporting From Audacity Importing Your Audio Into Miromaa M ROMAA training Contents Record Audio Using Audacity... 1 Getting Started with Audacity...

More information

Workshop 4: Digital Media By Daniel Crippa

Workshop 4: Digital Media By Daniel Crippa Topics Covered Workshop 4: Digital Media Workshop 4: Digital Media By Daniel Crippa 13/08/2018 Introduction to the Unity Engine Components (Rigidbodies, Colliders, etc.) Prefabs UI Tilemaps Game Design

More information

An Introduction to ScratchJr

An Introduction to ScratchJr An Introduction to ScratchJr In recent years there has been a pro liferation of educational apps and games, full of flashy graphics and engaging music, for young children. But many of these educational

More information

Top Storyline Time-Saving Tips and. Techniques

Top Storyline Time-Saving Tips and. Techniques Top Storyline Time-Saving Tips and Techniques New and experienced Storyline users can power-up their productivity with these simple (but frequently overlooked) time savers. Pacific Blue Solutions 55 Newhall

More information

Audacity 5EBI Manual

Audacity 5EBI Manual Audacity 5EBI Manual (February 2018 How to use this manual? This manual is designed to be used following a hands-on practice procedure. However, you must read it at least once through in its entirety before

More information

No Tech Genius Required: Your Guide to Photo Editing with Photoshop

No Tech Genius Required: Your Guide to Photo Editing with Photoshop You may give away this ebook. It may not be sold or modified in any manner. Brought to You by PLR-MRR-Products.com Disclaimer Reasonable care has been taken to ensure that the information presented in

More information

Would You Like To Earn $1000 s With The Click Of A Button?

Would You Like To Earn $1000 s With The Click Of A Button? Would You Like To Earn $1000 s With The Click Of A Button? (Follow these easy step by step instructions and you will) - 100% Support and all questions answered! - Make financial stress a thing of the past!

More information

TRBOnet Guard Tour Configuration and Operation Guide

TRBOnet Guard Tour Configuration and Operation Guide TRBOnet Guard Tour and Operation Guide Version 5.0 World HQ Neocom Software 8th Line 29, Vasilyevsky Island St. Petersburg, 199004, Russia US Office Neocom Software 15200 Jog Road, Suite 202 Delray Beach,

More information

PHOTOSHOP PUZZLE EFFECT

PHOTOSHOP PUZZLE EFFECT PHOTOSHOP PUZZLE EFFECT In this Photoshop tutorial, we re going to look at how to easily create a puzzle effect, allowing us to turn any photo into a jigsaw puzzle! Or at least, we ll be creating the illusion

More information

Copyright Digital Film Tools, LLC All Rights Reserved

Copyright Digital Film Tools, LLC All Rights Reserved 2 About this Guide ABOUT THIS GUIDE This User Guide is a reference for the Rays plug-in made for Adobe Photoshop, Adobe Photoshop Lightroom, Adobe Photoshop Elements and Apple Aperture. You can read from

More information

DataCAD 18 Softlock. Universal Installer. Installation. Evaluation

DataCAD 18 Softlock. Universal Installer. Installation. Evaluation DataCAD 18 Softlock DataCAD 18 uses a software-based license management option, referred to as a softlock, in lieu of the hardware-based USB license key, or hardlock used by older versions. Each DataCAD

More information

Enhanced Push-to-Talk Application for iphone

Enhanced Push-to-Talk Application for iphone AT&T Business Mobility Enhanced Push-to-Talk Application for iphone Standard Version Release 8.3 Table of Contents Introduction and Key Features 2 Application Installation & Getting Started 2 Navigating

More information

Next Back Save Project Save Project Save your Story

Next Back Save Project Save Project Save your Story What is Photo Story? Photo Story is Microsoft s solution to digital storytelling in 5 easy steps. For those who want to create a basic multimedia movie without having to learn advanced video editing, Photo

More information

Heuristic Evaluation of Spiel

Heuristic Evaluation of Spiel Heuristic Evaluation of Spiel 1. Problem We evaluated the app Spiel by Addison, Katherine, SunMi, and Joanne. Spiel encourages users to share positive and uplifting real-world items to their network of

More information

LAUNCHPAD. Getting Started Guide

LAUNCHPAD. Getting Started Guide LAUNCHPAD Getting Started Guide Overview Launchpad Thank you for buying Launchpad, the iconic grid instrument for Ableton Live. You re now part of the evolution in the creation of electronic music! The

More information

Push-to-talk ios User Guide (v8.0)

Push-to-talk ios User Guide (v8.0) Push-to-talk ios User Guide (v8.0) PTT 8.0 ios - Table of Contents 1 Activating PTT on your ios device... 4 How to activate PTT on your Android Smartphone... 4 How to Logout and Login to the PTT Service...

More information

UNDERSTANDING LAYER MASKS IN PHOTOSHOP

UNDERSTANDING LAYER MASKS IN PHOTOSHOP UNDERSTANDING LAYER MASKS IN PHOTOSHOP In this Adobe Photoshop tutorial, we re going to look at one of the most essential features in all of Photoshop - layer masks. We ll cover exactly what layer masks

More information

Getting started with AutoCAD mobile app. Take the power of AutoCAD wherever you go

Getting started with AutoCAD mobile app. Take the power of AutoCAD wherever you go Getting started with AutoCAD mobile app Take the power of AutoCAD wherever you go Getting started with AutoCAD mobile app Take the power of AutoCAD wherever you go i How to navigate this book Swipe the

More information

Enhanced Push-to-Talk Application for Android

Enhanced Push-to-Talk Application for Android AT&T Business Mobility Enhanced Push-to-Talk Application for Android Land Mobile Radio (LMR) Version Release 8.3 Table of Contents Introduction and Key Features 2 Application Installation & Getting Started

More information

Setup and Walk Through Guide Orion for Clubs Orion at Home

Setup and Walk Through Guide Orion for Clubs Orion at Home Setup and Walk Through Guide Orion for Clubs Orion at Home Shooter s Technology LLC Copyright by Shooter s Technology LLC, All Rights Reserved Version 2.5 September 14, 2018 Welcome to the Orion Scoring

More information

User Guide (Clarett USB Edition)

User Guide (Clarett USB Edition) User Guide (Clarett USB Edition) Version 1.0 www.focusrite.com TABLE OF CONTENTS INTRODUCTION... 3 System Requirements....4 Software Installation...4 The Clarett USB Mixer basic principles...5 MIXING &

More information

Scratch for Beginners Workbook

Scratch for Beginners Workbook for Beginners Workbook In this workshop you will be using a software called, a drag-anddrop style software you can use to build your own games. You can learn fundamental programming principles without

More information

Game Design Curriculum Multimedia Fusion 2. Created by Rahul Khurana. Copyright, VisionTech Camps & Classes

Game Design Curriculum Multimedia Fusion 2. Created by Rahul Khurana. Copyright, VisionTech Camps & Classes Game Design Curriculum Multimedia Fusion 2 Before starting the class, introduce the class rules (general behavioral etiquette). Remind students to be careful about walking around the classroom as there

More information

Get Started Using Wwise. It s as easy as 1, 2, 3!

Get Started Using Wwise. It s as easy as 1, 2, 3! Get Started Using Wwise. It s as easy as 1, 2, 3! Step 1: Understand the Basics Take a few moments to review the following resources to understand Wwise s unique approach to sound design for games, as

More information

METRO TILES (SHAREPOINT ADD-IN)

METRO TILES (SHAREPOINT ADD-IN) METRO TILES (SHAREPOINT ADD-IN) November 2017 Version 2.6 Copyright Beyond Intranet 2017. All Rights Reserved i Notice. This is a controlled document. Unauthorized access, copying, replication or usage

More information

for Solidworks TRAINING GUIDE LESSON-9-CAD

for Solidworks TRAINING GUIDE LESSON-9-CAD for Solidworks TRAINING GUIDE LESSON-9-CAD Mastercam for SolidWorks Training Guide Objectives You will create the geometry for SolidWorks-Lesson-9 using SolidWorks 3D CAD software. You will be working

More information

Game Genie Save Editor for PS3

Game Genie Save Editor for PS3 Game Genie Save Editor for PS3 by Datapower Development Table of Contents Game Genie Save Editor for PS3... 1 Getting Started... 4 Installation... 5 Activation... 8 Quick Start Guide... 9 Full Guide...

More information

User Guide. PTT Radio Application. Android. Release 8.3

User Guide. PTT Radio Application. Android. Release 8.3 User Guide PTT Radio Application Android Release 8.3 March 2018 1 Table of Contents 1. Introduction and Key Features... 5 2. Application Installation & Getting Started... 6 Prerequisites... 6 Download...

More information

Star Defender. Section 1

Star Defender. Section 1 Star Defender Section 1 For the first full Construct 2 game, you're going to create a space shooter game called Star Defender. In this game, you'll create a space ship that will be able to destroy the

More information

M-Powered Basics Guide

M-Powered Basics Guide M-Powered Basics Guide Version 6.8 for M-Powered Systems on Windows or Macintosh Digidesign 2001 Junipero Serra Boulevard Daly City, CA 94014-3886 USA tel: 650 731 6300 fax: 650 731 6399 Technical Support

More information

INTRODUCTION. Welcome to Subtext the first community in the pages of your books.

INTRODUCTION. Welcome to Subtext the first community in the pages of your books. INTRODUCTION Welcome to Subtext the first community in the pages of your books. Subtext allows you to engage in conversations with friends and like-minded readers and access all types of author and expert

More information

Tech Tips from Mr G Borrowing ebooks and Audiobooks Using OverDrive 3.2 on Apple ios Devices 2015

Tech Tips from Mr G Borrowing ebooks and Audiobooks Using OverDrive 3.2 on Apple ios Devices 2015 Tech Tips from Mr G Borrowing ebooks and Audiobooks Using OverDrive 3.2 on Apple ios Devices 2015 The Liverpool Public Library, the larger Onondaga County system, and libraries all over the country, subscribe

More information

Bridgemate App. Information for bridge clubs and tournament directors. Version 2. Bridge Systems BV

Bridgemate App. Information for bridge clubs and tournament directors. Version 2. Bridge Systems BV Bridgemate App Information for bridge clubs and tournament directors Version 2 Bridge Systems BV Bridgemate App Information for bridge clubs and tournament directors Page 2 Contents Introduction... 3 Basic

More information

Enhanced Push-to-Talk Application for iphone

Enhanced Push-to-Talk Application for iphone AT&T Business Mobility Enhanced Push-to-Talk Application for iphone Land Mobile Radio (LMR) Version Release 8.3 Table of Contents Introduction and Key Features 2 Application Installation & Getting Started

More information

TRBOnet Mobile. User Guide. for ios. Version 1.8. Internet. US Office Neocom Software Jog Road, Suite 202 Delray Beach, FL 33446, USA

TRBOnet Mobile. User Guide. for ios. Version 1.8. Internet. US Office Neocom Software Jog Road, Suite 202 Delray Beach, FL 33446, USA TRBOnet Mobile for ios User Guide Version 1.8 World HQ Neocom Software 8th Line 29, Vasilyevsky Island St. Petersburg, 199004, Russia US Office Neocom Software 15200 Jog Road, Suite 202 Delray Beach, FL

More information

Creating Photo Borders With Photoshop Brushes

Creating Photo Borders With Photoshop Brushes Creating Photo Borders With Photoshop Brushes Written by Steve Patterson. In this Photoshop photo effects tutorial, we ll learn how to create interesting photo border effects using Photoshop s brushes.

More information

15 TUBE CLEANER: A SIMPLE SHOOTING GAME

15 TUBE CLEANER: A SIMPLE SHOOTING GAME 15 TUBE CLEANER: A SIMPLE SHOOTING GAME Tube Cleaner was designed by Freid Lachnowicz. It is a simple shooter game that takes place in a tube. There are three kinds of enemies, and your goal is to collect

More information

Embroidery Gatherings

Embroidery Gatherings Planning Machine Embroidery Digitizing and Designs Floriani FTCU Digitizing Fill stitches with a hole Or Add a hole to a Filled stitch object Create a digitizing plan It may be helpful to print a photocopy

More information

ADDING RAIN TO A PHOTO

ADDING RAIN TO A PHOTO ADDING RAIN TO A PHOTO Most of us would prefer to avoid being caught in the rain if possible, especially if we have our cameras with us. But what if you re one of a large number of people who enjoy taking

More information

Instruction Manual. 1) Starting Amnesia

Instruction Manual. 1) Starting Amnesia Instruction Manual 1) Starting Amnesia Launcher When the game is started you will first be faced with the Launcher application. Here you can choose to configure various technical things for the game like

More information

Nikon View DX for Macintosh

Nikon View DX for Macintosh Contents Browser Software for Nikon D1 Digital Cameras Nikon View DX for Macintosh Reference Manual Overview Setting up the Camera as a Drive Mounting the Camera Camera Drive Settings Unmounting the Camera

More information

5.0 Events and Actions

5.0 Events and Actions 5.0 Events and Actions So far, we ve defined the objects that we will be using and allocated movement to particular objects. But we still need to know some more information before we can create an actual

More information

GOSYSTEM TAX 2016 RS E-FILE GUIDE LAST UPDATED: DECEMBER 22, 2016 TAX.THOMSONREUTERS.COM

GOSYSTEM TAX 2016 RS E-FILE GUIDE LAST UPDATED: DECEMBER 22, 2016 TAX.THOMSONREUTERS.COM GOSYSTEM TAX 2016 RS E-FILE GUIDE LAST UPDATED: DECEMBER 22, 2016 TAX.THOMSONREUTERS.COM Note: Please note that all screen images are valid as of December 22, 2016 and are subject to change at Thomson

More information

Introduction Installation Switch Skills 1 Windows Auto-run CDs My Computer Setup.exe Apple Macintosh Switch Skills 1

Introduction Installation Switch Skills 1 Windows Auto-run CDs My Computer Setup.exe Apple Macintosh Switch Skills 1 Introduction This collection of easy switch timing activities is fun for all ages. The activities have traditional video game themes, to motivate students who understand cause and effect to learn to press

More information

Macquarie University Introductory Unity3D Workshop

Macquarie University Introductory Unity3D Workshop Overview Macquarie University Introductory Unity3D Workshop Unity3D - is a commercial game development environment used by many studios who publish on iphone, Android, PC/Mac and the consoles (i.e. Wii,

More information

Getting Started. Pro Tools LE & Mbox 2 Pro. Version 8.0

Getting Started. Pro Tools LE & Mbox 2 Pro. Version 8.0 Getting Started Pro Tools LE & Mbox 2 Pro Version 8.0 Welcome to Pro Tools LE Read this guide if you are new to Pro Tools or are just starting out making your own music. Inside, you ll find quick examples

More information

User Guide. PTT Radio Application. ios. Release 8.3

User Guide. PTT Radio Application. ios. Release 8.3 User Guide PTT Radio Application ios Release 8.3 March 2018 1 Table of Contents 1. Introduction and Key Features... 5 2. Application Installation & Getting Started... 6 Prerequisites... 6 Download... 6

More information

User Guide: PTT Radio Application - ios. User Guide. PTT Radio Application. ios. Release 8.3

User Guide: PTT Radio Application - ios. User Guide. PTT Radio Application. ios. Release 8.3 User Guide PTT Radio Application ios Release 8.3 December 2017 Table of Contents Contents 1. Introduction and Key Features... 5 2. Application Installation & Getting Started... 6 Prerequisites... 6 Download...

More information

Introduction. The basics

Introduction. The basics Introduction Lines has a powerful level editor that can be used to make new levels for the game. You can then share those levels on the Workshop for others to play. What will you create? To open the level

More information

Voice Banking with Audacity An illustrated guide by Jim Hashman (diagnosed with sporadic ALS, May 2013)

Voice Banking with Audacity An illustrated guide by Jim Hashman (diagnosed with sporadic ALS, May 2013) Voice Banking with Audacity An illustrated guide by Jim Hashman (diagnosed with sporadic ALS, May 2013) Section One: Install and Setup Audacity Install Audacity... 2 Setup Audacity... 3 Getting Familiar

More information

Amazon Money Maker... 2 Section 1 - Amazon Heat Seeker... 3 Star Rating... 3 Reviews... 3 Cost... 3 Finding Products... 4 Keyword Research...

Amazon Money Maker... 2 Section 1 - Amazon Heat Seeker... 3 Star Rating... 3 Reviews... 3 Cost... 3 Finding Products... 4 Keyword Research... Amazon Money Maker... 2 Section 1 - Amazon Heat Seeker... 3 Star Rating... 3 Reviews... 3 Cost... 3 Finding Products... 4 Keyword Research... 5 Section 2 Create Your Amazon Affiliate Website... 7 Setting

More information

Estimated Time Required to Complete: 45 minutes

Estimated Time Required to Complete: 45 minutes Estimated Time Required to Complete: 45 minutes This is the first in a series of incremental skill building exercises which explore sheet metal punch ifeatures. Subsequent exercises will address: placing

More information

User Guide: PTT Application - Android. User Guide. PTT Application. Android. Release 8.3

User Guide: PTT Application - Android. User Guide. PTT Application. Android. Release 8.3 User Guide PTT Application Android Release 8.3 March 2018 1 1. Introduction and Key Features... 6 2. Application Installation & Getting Started... 7 Prerequisites... 7 Download... 8 First-time Activation...

More information

Photoshop Exercise 2 Developing X

Photoshop Exercise 2 Developing X Photoshop Exercise 2 Developing X X-ray Vision: In this exercise, you will learn to take original photographs and combine them, using special effects. The objective is to create a portrait of someone holding

More information

TRBOnet Enterprise/PLUS

TRBOnet Enterprise/PLUS TRBOnet Enterprise/PLUS Guard Tour User Guide Version 5.2 World HQ Neocom Software 8th Line 29, Vasilyevsky Island St. Petersburg, 199004, Russia US Office Neocom Software 15200 Jog Road, Suite 202 Delray

More information

Recording your Voice Tutorials 3 - Basic Uses of Audacity Wayne B. Dickerson

Recording your Voice Tutorials 3 - Basic Uses of Audacity Wayne B. Dickerson Recording your Voice Tutorials 3 - Basic Uses of Audacity Wayne B. Dickerson In this tutorial, you are going to learn how to use Audacity to perform some basic functions, namely, to record, edit, save

More information

Rowan University Freshman Clinic I Lab Project 2 The Operational Amplifier (Op Amp)

Rowan University Freshman Clinic I Lab Project 2 The Operational Amplifier (Op Amp) Rowan University Freshman Clinic I Lab Project 2 The Operational Amplifier (Op Amp) Objectives Become familiar with an Operational Amplifier (Op Amp) electronic device and it operation Learn several basic

More information

Okay, that s enough talking. Let s get things started. Here s the photo I m going to be using in this tutorial: The original photo.

Okay, that s enough talking. Let s get things started. Here s the photo I m going to be using in this tutorial: The original photo. add visual interest with the rule of thirds In this Photoshop tutorial, we re going to look at how to add more visual interest to our photos by cropping them using a simple, tried and true design trick

More information

Facebook Fan Page Secrets... 3 Section 1 Social Media Optimization... 4 Set Up Your Facebook Page... 4 Section 2 Fan Page Customization...

Facebook Fan Page Secrets... 3 Section 1 Social Media Optimization... 4 Set Up Your Facebook Page... 4 Section 2 Fan Page Customization... Facebook Fan Page Secrets... 3 Section 1 Social Media Optimization... 4 Set Up Your Facebook Page... 4 Section 2 Fan Page Customization... 6 Legitimize Your URL... 6 Customize the Look of Your Page...

More information

The Basics. Introducing PaintShop Pro X4 CHAPTER 1. What s Covered in this Chapter

The Basics. Introducing PaintShop Pro X4 CHAPTER 1. What s Covered in this Chapter CHAPTER 1 The Basics Introducing PaintShop Pro X4 What s Covered in this Chapter This chapter explains what PaintShop Pro X4 can do and how it works. If you re new to the program, I d strongly recommend

More information

creation stations AUDIO RECORDING WITH AUDACITY 120 West 14th Street

creation stations AUDIO RECORDING WITH AUDACITY 120 West 14th Street creation stations AUDIO RECORDING WITH AUDACITY 120 West 14th Street www.nvcl.ca techconnect@cnv.org PART I: LAYOUT & NAVIGATION Audacity is a basic digital audio workstation (DAW) app that you can use

More information

Unit 6.5 Text Adventures

Unit 6.5 Text Adventures Unit 6.5 Text Adventures Year Group: 6 Number of Lessons: 4 1 Year 6 Medium Term Plan Lesson Aims Success Criteria 1 To find out what a text adventure is. To plan a story adventure. Children can describe

More information

Copyright 2015, Rob Swanson Training Systems, All Rights Reserved.

Copyright 2015, Rob Swanson Training Systems, All Rights Reserved. DISCLAIMER This publication is indented to provide accurate and authoritative information with regard to the subject matter covered. The Handwritten Postcard System is not legal advice and nothing herein

More information