So I guess this is partly an FYI. We are on Unreal 4.23 and recently upgraded to WWise 2019.2.7250.1621 from 2019.1.4.7065.1430.
One thing that has changed between these two versions is that FAkAudioStyle::Initialize() is now run from AkAudioModule::StartupModule().
In our case this causes a crash due to the following flow:
- During game startup an asynchronous load of some pre-loaded game assets triggers.
- Game asset references Ak assets, forcing a load of the Ak Module.
- AkModule::StartupModule() runs FAkAudioStyle::Initialize() which in turns run LoadAkTexture().
- LoadAkTexture() attempts to run an asynchronous load of the texture.
- Unreal asserts because it does not allow nested asynchronous loads.
As far as I can see FAkAudioStyle only sets up Editor UI, so I do not se why it is run outside #if WITH_EDITOR?
As a work around we have moved it inside the define and it seems to work as expected.
Do you have any information on why it has been set up like this, and if there could be any issues with our workaround?
Thankful for any info,