Version
Wwise Unreal Integration Documentation
|
This version is a major milestone in the Unreal Integration for Wwise. Much like Unreal Engine 5 bringing the engine to a new realm, Audiokinetic’s Wwise Integration for Unreal pushes the boundaries of what is possible with both tools working together. The changes span more than one year of hard development work, as well as many discussions with developers who want to push the boundaries of what is possible with the Wwise and Unreal combo. There were many lessons learned during the incremental optimizations and feature requests throughout the previous years. For example, we initially wanted to support every single possible workflow, where every single game has its own prerequisites and it is a pipe dream to make every fantastic usage working without customization. As such, we are very thankful to Wwise users for making their joys, hurdles and frustrations known to us. This is what ultimately allowed the priorities to be set.
Before beginning the migration process, ensure that you can modify all the necessary files in the Wwise and Unreal projects.
Files you will need to check out in version control:
You may also need to check out Maps or Blueprints referencing AkAudioBank assets as these files will be deleted as part of the migration process.
As usual, migration begins by upgrading the Wwise Unreal Integration from the Unreal Engine page in the Audiokinetic Launcher.
Note: If your project was previously using 2022.1.0 Beta 2, a change in casing in some file names might cause build issues on platforms where the file system is case-sensitive. Ensure that all files containing the word "ShareSet" in their file name are spelled correctly (with each S capitalized in "ShareSet") after upgrading from the Audiokinetic Launcher. |
After the upgrade is complete, open the Wwise Project and a “Project Migration” dialog will present itself.
Click the Update button to continue.
After the Wwise project is updated and saved, you can open your Unreal project. When it opens, the Wwise Integration Migration dialog appears. In the dialog, you can choose which migration operations to perform. We recommend that you perform all of the migration operations immediately, but you can defer the migration process or perform each operation separately if necessary. If you want to perform these steps independently, we recommend that you read the Partial Migration and Project Migration State section before attempting to migrate your project. When multiple migration operations are selected, they are performed in the same order as they appear in the Migration Window. The migration dialog remains accessible in the Build Menu under Audiokinetic Migration > Finish Project Migration until all migration operations are complete.
There are four distinct operations in the migration:
SoundBank management is managed through Wwise Authoring once again, and therefore AkAudioBank assets are no longer used and must be deleted. In the previous workflow, SoundBanks were represented in the Unreal Project as manually created AkAudioBank assets. Event and Aux Bus assets could then be manually grouped into these SoundBanks. This was necessary in the Legacy workflow, but not with Event Based Packaging.
The following section in the dialog might appear, depending on whether your Unreal project contains AkAudioBank assets. In Wwise 2022.1, this migration operation helps you transfer your existing SoundBanks from your Unreal project back to the Wwise project and cleans up the deprecated AkAudioBank assets.
Option | Description |
---|---|
Transfer SoundBanks to Wwise | When checked, you must select a transfer method. See the Transfer methods section below. |
Transfer Auto Load property | AkAudioBank assets in Unreal had a property which allowed users to specify whether the bank data should be loaded automatically with the asset (e.g. as soon as the asset is used in a blueprint) or manually. If checked, the value of this property will be transferred to the assets that were grouped within the bank. |
Delete AkAudioBank Assets | All AkAudioBank assets in the project will be deleted. If you also checked Transfer SoundBanks, this step will be completed after the transfer is completed. We recommend deleting these assets, as they no longer serve a purpose. After they are deleted, it will no longer be possible to "Transfer SoundBanks to Wwise". |
Soundbanks are transferred to Wwise either by creating a SoundBank Definition File or by using WAAPI.
Create SoundBank Definition File will create a text file containing a list of SoundBank names and their content, which can then be imported into Wwise. If this option is selected, a field appears, in which you can select the destination for the generated file. For specifics on how to import this file into your Wwise project, consult the official documentation.
WAAPI will use the established WAAPI connection between the Unreal Editor and Wwise Authoring to update the Wwise Project to contain the SoundBanks. Be sure to save your Wwise project once the SoundBanks are transferred.
Wwise Authoring must be open for this to be usable. If you are not able to establish a WAAPI connection, the “Auto Connect to WAAPI” project setting may be disabled in your Wwise User Settings.
If the WAAPI transfer of SoundBanks to Wwise fails partially, or if the process fails to write to the SoundBank definition file, a dialog appears with a list of errors. In the dialog, you can either cancel the migration or ignore the errors and continue. Some errors may be acceptable or expected. For example, if events that were removed from the Wwise project still exist as assets in the Unreal project, WAAPI calls involving those events will fail.
Some Wwise asset types used in the previous integration version have been deprecated and should be removed from the project. By selecting the Delete Deprecated Assets option, all assets of type AkMediaAsset, AkFolder and AkPlatformAssetData will be deleted.
Wwise asset properties have changed and they no longer serialize SoundBank or media binary data. The only information serialized to Wwise assets now is their GUID, ShortID, Name, and type-specific metadata properties used when loading or cooking the assets. During cooking, the information necessary for resource loading is serialized to the asset packaged in the game.
Selecting Migrate Wwise assets marks all Wwise assets in the project as dirty and save them. If you were previously using EBP and Split Switch Container Media was enabled, all events will have the EventInfo.SwitchContainerLoading flag set to LoadOnReference before saving.
Note: If you choose Migrate Wwise Assets as the only migration operation, it will not be possible to "Transfer SoundBanks to Wwise" afterwards, because the information necessary to do so will have been erased from the relevant assets. |
Selecting Update Project Settings will update project settings depending on whether you were using Event-Based Packaging or the Legacy workflow. Be sure to save your projects after changes have been made.
Event-Based Packaging:
Legacy: No settings will be changed in the Wwise project.
In both cases:
<Wwise Project\/GeneratedSoundBanks
path, unless your project has specific requirements.Warning: If you modify the Generated Sound Banks folder location during migration, you might need to manually update the setting in Wwise. See Settings Requiring Manual Update. |
Note: In Legacy projects, the GeneratedSoundBanks Folder had to be placed within the Unreal project's Content folder for packaging purposes. This is no longer necessary and we discourage using a folder within the Unreal project's Content for GeneratedSoundBanks. If the GeneratedSoundBanks Folder is inside the Unreal's Content Folder, you will be prompted to import files when SoundBanks are generated.You can ignore these prompts, but we recommend that you keep the GeneratedSoundBanks Folder outside of the Unreal project to avoid the prompts altogether. The GeneratedSoundBanks Folder can be changed at a later time in the Wwise Authoring Project Settings and the Unreal Project Settings. Both settings must be kept up to date independently. |
Once all operations from the migration dialog are completed, your project should be ready, unless it uses external sources, which will require an additional migration step.
The integration also provides a commandlet (refer to Using the Project Migration Commandlet) to perform the migration operations described in the previous section from the command line.
Wwise Installation Path (In Unreal) If you have Wwise installed on your machine, and you want to generate SoundBanks from within Unreal without using WAAPI, you must set the Wwise Mac/Windows Installation Path setting in the Wwise User Settings.
SoundBanks Root Output Path (In Wwise) We recommend verifying that the Root Output Path in Wwise authoring's SoundBanks Settings corresponds to the path set in the Generated Sound Banks Folder in the Unreal Wwise Settings.
Note: The Root Output Path is relative to the Wwise project, while the Generated Sound Banks Folder is relative to the Unreal project's Content folder. |
In the case of migrated Legacy projects, ensure that platform-specific SoundBank Folder settings do not point to a location within the Unreal project's Content folder.
The implementation of support for external sources has changed dramatically in 2022.1. It allows for advanced users to implement their own systems for setting and tracking external sources. We also provide basic support with the WwiseSimpleExternalSourceManager, which uses Unreal Data Tables to track external source media and provides an API and blueprint functions to assign media to external source IDs.
The FAkExternalSourceInfo and FAkSDKExternalSourceArray structures are no longer used by this module. For each instance of an FAkExternalSourceInfo being created in a blueprint you will want to replace it with a WwiseSimpleExternalSourceManager::SetExternalSourceMedia blueprint node.
Afterwards, you can remove any references to them in your blueprints. You may also need to recompile blueprints containing PostEvent nodes that were linked to FAkSDKExternalSourceArrays.
For more in-depth information about how to work with External Sources in Wwise 2022.1, consult Using the Wwise Simple External Source Manager.
We recommend that you perform all migration operations at the same time. However, if you want to perform the steps one at a time, or perform certain operations manually, be aware of the following:
Project migration state is mainly tracked using fields in the DefaultGame.ini file:
bSoundBanksTransfered
: Tracks whether the SoundBank Transfer operation has been performed.bAssetsMigrated
: Tracks whether the Asset Migration operation has been performed.bProjectMigrated
: Tracks whether the Project Migration operation has been performedThe migration process updates these settings depending on whether the corresponding migration operation succeeded.
Project migration state is also determined based on the contents of the Unreal project. If the project contains no AkAudioBank assets, no SoundBank migration is needed and the setting is updated automatically. Likewise, the option to delete deprecated assets is only presented if deprecated assets are found in the project.
Once the migration is complete, you must regenerate your Wwise SoundBanks. This can be performed from the Wwise Picker or Build menu in Unreal, or directly in Wwise (now that SoundBank management has been returned to Wwise).
After SoundBank generation has succeeded, you should now be able to view your Wwise Project structure in the Wwise Picker and hear sounds when you Play In Editor.
Note:
These assets are no longer useful in 2022.1. You can delete any such assets if they still exist in your project (manually or during migration), but otherwise this message can be ignored. |
Previously, you could group Events into SoundBanks by right-clicking assets and selecting Group into Sound Bank. This is no longer possible; however, you can achieve the same result by using User-Defined SoundBanks in the Wwise Authoring application.
Questions? Problems? Need more info? Contact us, and we can help!
Visit our Support pageRegister your project and we'll help you get started with no strings attached!
Get started with Wwise