FMOD instance errors fix

This commit is contained in:
Timur Nizamov
2026-01-30 21:01:11 +02:00
parent 52701f3231
commit 5a13928a59
4 changed files with 37 additions and 15 deletions

View File

@@ -291,6 +291,11 @@ public class AudioManager : MonoBehaviour
}
public static void Pause()
{
musicEventInstance.setPaused(true);
}
//=====//
//=====//
@@ -323,6 +328,8 @@ public class AudioManager : MonoBehaviour
// Set the callback for programmer sounds
instance.setCallback(dialogueCallback);
bool managedByOcclusion = false;
// Add occlusion if available on the emitter
if (emitter != null)
{
@@ -330,11 +337,16 @@ public class AudioManager : MonoBehaviour
if (occlusion != null)
{
occlusion.InitialiseWithInstance(instance);
managedByOcclusion = true;
}
}
instance.start();
instance.release();
if (!managedByOcclusion)
{
instance.release();
}
}
@@ -414,11 +426,6 @@ public class AudioManager : MonoBehaviour
instance.setPaused(false);
}
public static void Pause()
{
musicEventInstance.setPaused(true);
}
public static void Pause(EventInstance instance)
{
instance.setPaused(true);
@@ -430,8 +437,10 @@ public class AudioManager : MonoBehaviour
{
foreach (EventInstance eventInstance in eventInstances)
{
eventInstance.stop(FMOD.Studio.STOP_MODE.IMMEDIATE);
eventInstance.release();
if (eventInstance.isValid()) {
eventInstance.stop(FMOD.Studio.STOP_MODE.IMMEDIATE);
eventInstance.release();
}
}
}