Всем привет, подскажите как можно сохранить значение value
для Audio mixer что бы при загрузки загружались сохранные настройки а не дефолтные. Я пытался сохранять через PlayerPrefs
:
public void Start()
{
if (PlayerPrefs.HasKey("musicVal")) //save Quality
{
PlayerPrefs.GetFloat("musicVal");
}
}
public void SetMusicLvl(float musicLvl)
{
masterMixer.SetFloat("musicVal", musicLvl);
PlayerPrefs.SetFloat("musicVal", musicLvl);
}
Но ничего не вышло.
using System.Collections;
using System.Collections.Generic;
using UnityEngine.Audio;
using UnityEngine.UI;
using UnityEngine;
using System.Linq;
public class MixLevels : MonoBehaviour {
public AudioMixer masterMixer;
public Slider slider;
public void Start()
{
if (PlayerPrefs.HasKey("musicVal"))
{
PlayerPrefs.GetFloat("musicVal");
}
}
public void SetSfxLvl(float sfxLvl)
{
masterMixer.SetFloat("sfxVol", sfxLvl);
}
public void SetMusicLvl(float musicLvl)
{
masterMixer.SetFloat("musicVal", musicLvl);
PlayerPrefs.SetFloat("musicVal", musicLvl);
}
Я вижу как ты достаешь из PlayerPrefs значение, но я не вижу что бы ты пытался это значение куда-то задать.Ну достал ты его, так сделай с ним что-то:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Audio;
public class SoundSettingsSaver : MonoBehaviour
{
public AudioMixer masterMixer;
private float _volume;
public float Volume
{
get
{
masterMixer.GetFloat("musicVal", out _volume);
return _volume;
}
set
{
_volume = value;
masterMixer.SetFloat("musicVal", _volume);
PlayerPrefs.SetFloat("musicVal", _volume);
}
}
public void Start()
{
SettingsVolumeLoad();
Debug.Log(Volume);
Volume = 0.9f;
Debug.Log(Volume); //Здесь мы в логах увидим изменение значения! У меня работает! Урраааа!
}
public void SettingsVolumeLoad()
{
if (PlayerPrefs.HasKey("musicVal"))
{
Volume = PlayerPrefs.GetFloat("musicVal");
}
}
}
UPD1: я немного облегчил тебе задачу еще немного оптимизировав код.
UPD2: твой аудиомиксер нужно еще создать и настроить перед тем как к нему можно будет обращатся по этому коду:
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть переменная в которой DOM страницыКак с помошью HtmlAgilityPack получить все ссылки которые видны на странице?
Я создаю пустой проект, можно ли как то подключить в него MVC, и назначить ему 4-ую версиюИбо по стандарту ставится 5-ая
Правильно ли я понимаю, если у меня есть просто окно, то в Dispose мне нужно его просто закрыть, но если у меня в нем еще будут обьекты которые можно...