I’ve been optimising over the last week or two as we had a build of the game due. We were running into issues with the music cutting out during a bike race. Figured it was the extra instances active during a race and so after profiling we found that the Virtual and Real Channels available were being hit, so we increased them both to maximum and tested again.
This time, the max channels were not being hit but the music still cut out.
We took out the AI racers audio and this time the music worked. It felt like we’d made room for it? But the max channels were not being reached.
Since then, I’ve done a bunch of optimisation and priority setting in FMOD and the music always works (thanks to priorities) and, from restricting max instances in various events, subevents and audio files, i’ve got it working quite well now.
But even still, there’s stuff that sounds like it’s cutting out, not due to max instances in fmod being met, but more like it’s hit the ceiling in Unity and is stealing events in the game.
For extra clarity, the FMOD settings in Unity have Virtual Channels set to 2048 and the Real Channels set to 256
in the FMOD profiler, I’m maxing out at about 100 Total Voices/70 Active Voices and a top score of 120 instances. This is the same in a build as it is in editor atm.
Anyone have any thoughts on this? Or further suggestions for ways I can profile this?
What version of FMOD and Unity are you using?
Would it be possible to get the profiler recording uploaded to your profile with these settings:
I’ve uploaded my recent profiler sessions (i hope correctly) to my profile with those settings. Let me know if I did it wrong and i’ll do it again.
I’m using FMOD 2.02.17 and Unity 2022.3.6f1
Thank you for uploading that. Unfortunately, I am getting the warning that the package does not include any profiler sessions.
Could you try the following:
- With the selected profiler session right-click and select
- Use the options listed above
- Upload the created package
Ah bugger… yep this one I’m uploading certainly does. Sorry about that. Should be up in a few minutes from posting this.
At 1:40, a race starts and it’s usually here that Unity spawns a bunch of objects and the audio clogs up a bit, sometimes to a strangling point. And like i said before, this is when the max amount of channels has not been hit. I’m hopefully just missing something obvious
Thank you for uploading that again. The issue might be that you are using stealing behaviors other than
Virtualization, other behaviors do not virtualize events rather the events are stopped: FMOD Studio | Advanced Topics - Stealing and Virtualization. Could you try changing the behavior to
Virtualization for all the events and let me know if this helps.
Oh cool! yeah, i’ve got them set to Quietest atm. i have a question though, will setting them to Virtualization still respect the FMOD event’s envelope when it’s triggered to activate?
Gonna set it up either way and test right now.
Yes, it will. Let me know how testing goes!
Hey! Yeah, it’s all working great! Performance is looking excellent!
Thank you kindly!