Sorry for the delayed response,
For some context, the AsyncCommandBuffer::growBuffer
warning means that the Studio system is receiving more commands than it can currently keep track of, and as a result needs to expand its command buffer - this isn’t necessarily an issue, unless you want to avoid dynamic growth, or are running into memory constraints. The Starvation detected in WASAPI output buffer!
warning indicates that the mixer was too slow to output a sound due to some kind of processing constraint, i.e. too much CPU overhead. These issues together lead me to think you’re creating too many event instances and/or calling functions on them really frequently.
And as expected, when looking at your profiler sessions in FMOD Studio, I can see that a number of your events, specifically the Gate and Door events, are being created with an extremely high frequency. You can examine this yourself by clicking on the “Lifespans” section at the top of the Profiler window, which will show you the creation and destruction of every event instance in the recorded session. In your DoorAudio.cs
script, you’re creating an event instance every single update - though this code has been commented out in favor of TriggerSounds.cs
from what I can tell, I believe this was likely the cause of your problem when you initially recorded your profiler sessions.
If I remove all instance limits that you’ve set in Studio, and test the game running with the current method you’re using to play door sounds (TriggerSounds.cs
), I don’t seem to be running into any issues. Please try doing the same and seeing whether the problem is resolved on your end.
Also, though it’s unrelated and mostly benign: you seem to be attempting to set the “Speed” parameter for your Footstep event in FMODStudioFirstPersonFootsteps.cs
when it doesn’t actually have that parameter.