Hi, I’ve just started working with FMOD integration in Unity recently.
We are planning to have multiple teams working on the sound design for different minigames within the same app.
We intend to have different banks for each mini game so that we can download and load banks in Unity based on which ones will be used.
I have a few questions wrt this.
Is there a way to automate mixing through Unity Script. For example, reducing the volume of the Music Bank when something from a voiceover bank is playing.
If I have 2 banks, both containing the same sound asset, if I load both banks, does this mean that the sound asset will also be loaded twice in the memory? Is there a way to export FMOD sound assets separately outside of the bank to save memory?
Is there some way to compile the entire FMOD project after new banks have been added to eliminate duplicate events or sounds?
Can this be done in runtime during Unity build? So that duplicate sound assets and sound events can be combined? Since multiple people will be working on it.
Banks are just used to load events. What you are looking for is to use a sidechained compressor between buses. To make it easier, you could group together all buses related to the Music bank and all the buses from the voiceover bank. Take a look at the Music and VO buses in our FMOD Studio example project.
When you load a bank with the same event, FMOD will load and then discard the duplicate event. Duplicate assets are only loaded from the first bank, they won’t be loaded twice with the second bank.
As mentioned before, FMOD will discard duplicate events and won’t load duplicate assets so there’s no need to do anything extra within Unity other than to load the bank.
Not just the same event but the same sound asset, the stuff that you put inside events. But as you said, duplicate assets will not be loaded. Thanks a ton. Does this also work if the sound asset is in a different location or has a different name? Does it compare binaries i.e?
I ask because of the multiple teams working on the sound. There can be some confusion between them and there might be 2 different events using 2 different instances of say a large background music asset file in 2 different game banks, in 2 different asset folders.
The assets folder is just the folder hierarchy on the operating system. If there are two files named differently or in different locations then FMOD will not consider them to be the same even if they have identical binaries.
I recommend looking into source control for your project, and/or using the “Consolidate…” option on your asset(s). Check out the FMOD Studio manual (press F1) for more information on this.