Что это: компонент-мост: связывает Toggle или Slider с AMSettings (громкость Master/Music/Efx, мьют), а также поддерживает кастомный режим через события. Пространство имён: Neo.Audio. Файл: Scripts/Audio/View/AudioControl.cs.
Как использовать: добавить на объект с Toggle или Slider, выбрать канал (Master, Music, Efx или Custom); синхронизация с AMSettings автоматическая. Для Slider используется нормализованный диапазон 0..1.
Сохранение громкости между сессиями настраивается не здесь, а в AMSettings: включение/выключение Persist Volume, ключи Save Key и API SaveProvider.
- Пространство имен:
Neo.Audio - Путь к файлу:
Assets/Neoxider/Scripts/Audio/View/AudioControl.cs
Описание
Связывает Toggle или Slider с AMSettings для управления громкостью или состоянием мьюта.
Ключевые особенности
- Авто-определение UI: Автоматически определяет, находится ли он на
ToggleилиSlider. - Гибкая настройка: Позволяет выбрать, какой канал контролировать:
Master,Music,EfxилиCustom. - Выбор backend:
MixerOnly(управление напрямуюMasterVolume/MusicVolume/EfxVolumeв AudioMixer) илиAudioSourceAndMixer. - Двусторонняя синхронизация: Изменение значения на слайдере меняет громкость в
AMSettings. И наоборот, если громкость изменится где-то еще, состояние слайдера или тогла обновится. - Старт и смена сцены: в
StartподтягиваетсяAMSettingsи выполняется начальная синхронизация UI; вOnEnable(после первогоStart) UI снова подстраивается под актуальные значения — удобно приDontDestroyOnLoadу настроек и новых меню на другой сцене. Для Toggle подписка на mute:MuteMaster(Master),MuteMusic(Music),MuteEfx(Efx). - Нормализованный процент: для Slider значения всегда в диапазоне
0..1(проценты громкости). - Кастомные события: в режиме
Customможно повесить собственную логику черезonSetActiveCustom(bool)иonSetPercentCustom(float). - Простота использования: Не требует написания кода. Вся настройка происходит в инспекторе.
Публичные методы
Set(bool active)— применяет состояние вкл/выкл для выбранного типа (Master/Music/Efx/Custom).Set(float percent)— применяет нормализованное значение громкости0..1для выбранного типа (Master/Music/Efx/Custom).