Table of Contents

Quick Start Sample Integration - Banks

Bank Integration Example

As explained in Concept: Banks, there are two types of banks: Initialization banks, and SoundBanks. There is one initialization bank for each Wwise project, and it must be loaded before any other bank. There may be any number of SoundBanks in the project, and some of them might exist for multiple languages.

The following code begins by setting the base path and language-specific subdirectory in the Low-Level I/O module. If you are overriding this module or the whole Streaming Manager, this code will need to be adapted as needed. Refer to Streaming / Stream Manager for more information.

The code then loads the initialization bank, which by default is named "Init.bnk". If you decide to rename the file, the code must be updated accordingly.

Finally, this code loads the "Car.bnk", "Human.bnk" and "MarkerTest.bnk" soundbanks. In our sample project, these contain events such as Play_Engine, Stop_Engine and Play_Hello.

// Bank file names
#define BANKNAME_INIT L"Init.bnk"
#define BANKNAME_CAR L"Car.bnk"
#define BANKNAME_HUMAN L"Human.bnk"
#define BANKNAME_MARKERTEST L"MarkerTest.bnk"

(...)

//
// Setup banks path
//

g_lowLevelIO.SetBasePath( AKTEXT("../../../samples/IntegrationDemo/WwiseProject/GeneratedSoundBanks/Windows/") );
AK::StreamMgr::SetCurrentLanguage( AKTEXT("English(US)") );

//
// Load banks synchronously (from file name).
//

AkBankID bankID; // Not used. These banks can be unloaded with their file name.
AKRESULT eResult = AK::SoundEngine::LoadBank( BANKNAME_INIT, AK_DEFAULT_POOL_ID, bankID );
assert( eResult == AK_Success );
eResult = AK::SoundEngine::LoadBank( BANKNAME_CAR, AK_DEFAULT_POOL_ID, bankID );
assert( eResult == AK_Success );
eResult = AK::SoundEngine::LoadBank( BANKNAME_HUMAN, AK_DEFAULT_POOL_ID, bankID );
assert( eResult == AK_Success );
eResult = AK::SoundEngine::LoadBank( BANKNAME_MARKERTEST, AK_DEFAULT_POOL_ID, bankID );
assert( eResult == AK_Success );

Refer to Integration Details - Banks for more information regarding Banks in the sound engine, and File Location Resolving for information on localization.

Note.gif
Note: This sample code comes from the Sound Engine Integration Sample Project available in the Samples section. Refer to Integration Demo Sample for more information.