Version
menu_open

Using Wwise with Your Source Control System

All Wwise project files, including the individual Work Units, are XML, making them well suited to source control. We recommend that certain, but not all, files be added to source control.

All of the files that appear in the File Manager can be added to source control. Wwise uses these files to generate any other files needed by your project. We recommend adding the following to source control:

  • .wproj - The Wwise project file. It is found at the root of your project folder.

  • .wwu - Wwise Work Units. These files are found throughout the subdirectories of your main project folder.

  • Originals folder - The original sound files, used to create the final audio assets of a project can be under source control. However, every .wav file has a corresponding .akd file which does not need to be included as it is generated as needed.

In general, files generated by Wwise can be excluded from source control. Not only is adding them to source control unnecessary, but in a multi-user environment sharing certain files can cause synchronization problems. We recommend excluding:

  • .akd - These files contain .wav file metadata and are generated by Wwise when needed.

  • .backup folder - When you open your project with a newer major version of Wwise, the project is upgraded, and the .backup folder is generated. The purpose of it is to revert the project upgrade, if necessary. If your project is in source control, then it can be reverted from there, so the .backup can be excluded from source control.

  • .cache folder - The .cache folder located in your project directory is a local working folder for Wwise. The contents of the .cache folder should not be added to your source control system because it may cause unexpected behaviors in Wwise.

  • .prof - These files are generated at each capture, and are not part of the project data.

  • .validationcache - These are generated from .wwu files and can be excluded.

  • .wsettings - This file is specific to the local user and computer.

  • IncrementalSoundBankData.xml - This file tracks the state of the SoundBanks based on the local content of the Wwise project and local SoundBank generation history.

Note that .gitignore and .p4ignore files are included when creating a new project. Here is a sample .gitignore file:

# Wwise
.backup*
.cache*
*.akd
*.prof
*.validationcache
*.wsettings
IncrementalSoundBankData.xml

SoundBanks can always be generated from the project. However, if you have team members who do not use Wwise they will need these generated files to hear sounds while playing the game in development. Source control could be a way to provide them access. If more than one Wwise user is adding SoundBanks to source control, the files can become desynchronized. To avoid this, add all .bnk and .wem files in the soundbanks/ path. Depending on how Wwise is integrated with your game engine you may also need to add .txt, .xml, and .json files.

Large files in your project may also require special handling to save time, for example using Git LFS. The Git LFS exclusion file could include large binary files such as .wav, .aif, .png, and .jpg.

Throughout the development of your game, you can view the status of your project file (.wproj), Work Unit files (.wwu), and audio files in the File Manager. If you are using the Perforce, Subversion, or another Workgroup plug-in, you can perform source control functions directly in Wwise. For more information about using a Workgroup plug-in in Wwise, refer to Managing Project Files with a Source Control Plug-in.

By default Wwise saves Work Unit files, SoundBank files and some project files with LF line endings. Wwise can save them with CRLF endings. See Line Ending in the General Tab of the Project Settings.

When you are working as part of a team and are using a source control system to manage the files in your project, you should always be aware that others are working on the same project and that there may be merge conflicts that need to be resolved. This is why it is important to sync and merge your work often and to communicate frequently with your team members about the work you are doing. For a complete list of best practices, refer to Workgroup Tips & Best Practices.


Was this page helpful?

Need Support?

Questions? Problems? Need more info? Contact us, and we can help!

Visit our Support page

Tell us about your project. We're here to help.

Register your project and we'll help you get started with no strings attached!

Get started with Wwise