Unable to find and load banks - inconsistency between Settings editor and RuntimeManager

We are building for a single platform, and as such have selected that in the settings editor, but:
image
image

So the settings editor fails, but the RuntimeManager is happy to load the bank.

If we change it to Multiple Platforms, the editor is happy, but now the RuntimeManager fails.
The same is true if the path is set to the single platform folder, e.g. FMODBuild/Desktop.

The editor expects there to be no platform subfolder, when single platform is selected, however FMOD Studio outputs this platform folder, and RuntimeManager expects is as well.

EditorUtils:

else
{
    if (Directory.GetFiles(settings.SourceBankPath, "*.strings.bank").Length == 0)
    {
        valid = false;
        reason = string.Format("Build path '{0}' does not contain any built banks.", settings.SourceBankPath);
        return;
    }
}

Hi,

What version of the FMOD integration are you using?

The Multiple Build issues was solved in 2.02.08: FMOD Engine | Welcome to FMOD Engine - Detailed Revision Histroy.

Unfortunately, I was not able to reproduce this behavior.

Hope this helps

We are using version 2.02.22.

The issue is easy to reproduce.

  1. Setup an FMOD project and set it to build to a specific folder, e.g. FMODBuild
  2. Build it
  3. Create a unity project and import the integration
  4. In the Unity integration, set the Source Type to Single Platform Build
  5. Also set the Build Path to the build folder.
  6. Observe error message
  7. Change build path to the platform subfolder, e.g. FMODBuild/Desktop
  8. Error message dissappears
  9. Be sure the Initialization->Load Banks is set to all
  10. Run the Unity project
  11. Observe runtime error in log

As already posted above, if Source Type is set to Single Platform Build, the editor will complain as it expects the bank to be in the SourceBankPath folder, not in a platform subfolder.

Conversely, RuntimeManager’s LoadBank(string bankName, bool loadSamples, string bankId) method, gets the bankName prefixed by platform folder, e.g. Desktop/Master.strings.bank. It also resolves the SourceBankPath from settings, so if set to the platform subfolder (which makes the editor happy) it will end up with the platform twice in the path, e.g.
…FMODBuild/Desktop/ + Desktop/Master.strings.banks which is not a valid path.

Same issue if Source Type is set to Multi platform Build.

Thank you for the reproduction steps.

Unfortunately, I am still unable to reproduce the issue.

Would it be possible to get a copy of your project or a stripped-down version displaying the issue uploaded to your profile? Please note you must register a project with us before uploading files.