using UnityEngine; using UnityEngine.Audio; public class SettingReadMgr : MonoBehaviour { #region Base [Header("Base")] [SerializeField] private AudioMixer amxMaster; private AudioMixerGroup amxgBgm; private AudioMixerGroup amxgEfc; private AudioMixerGroup amxgVoice; #endregion Base void Start() { amxgBgm = amxMaster.FindMatchingGroups("Bgm")[0]; amxgEfc = amxMaster.FindMatchingGroups("Efc")[0]; amxgVoice = amxMaster.FindMatchingGroups("Voice")[0]; SoundMgr.Instance.SetAmxGroupBgm(amxgBgm); LoadSoundSettings(); } private void LoadSoundSettings() { float fbgmvol = ES3.Load(Global.ES3_BgmVol, 0.75f); float fefcvol = ES3.Load(Global.ES3_EfcVol, 0.75f); float fvoicevol = ES3.Load(Global.ES3_VoiceVol, 0.75f); if (fbgmvol < 0.0001f) fbgmvol = 0.0001f; if (fefcvol < 0.0001f) fefcvol = 0.0001f; if (fvoicevol < 0.0001f) fvoicevol = 0.0001f; SoundMgr.Instance.BgmOn = fbgmvol > 0.0001f; SoundMgr.Instance.EfcOn = fefcvol > 0.0001f; SoundMgr.Instance.VoiceOn = fvoicevol > 0.0001f; amxMaster.SetFloat(Global.ES3_BgmVol, Mathf.Log10(fbgmvol) * 20f); amxMaster.SetFloat(Global.ES3_EfcVol, Mathf.Log10(fefcvol) * 20f); amxMaster.SetFloat(Global.ES3_VoiceVol, Mathf.Log10(fvoicevol) * 20f); } }