Work in progress

The content of this page was not yet updated for Godot 4.2 and may be outdated. If you know how to improve this page or you can confirm that it's up to date, feel free to open a pull request.

Аудиошины

Введение

Код обработки звука Godot был написан специально игр с целью достижения оптимального баланса между производительностью и качеством звука.

Аудиосистема Godot позволяет создавать любое количество аудио шин и добавлять к каждой шине любое количество эффектов. Только мощность устройства на котором запущена ваша игра, может ограничить используемое количество шин и эффектов до того, как производительность начнет падать.

Шкала децибел

Звуковой интерфейс Godot сделан специально для профессионалов звукового дизайна. С этой целью он использует шкалу децибел.

Для тех, кто не знаком с ней, это можно объяснить следующими фактами:

  • Шкала децибел (дБ) является относительной шкалой. Он представляет отношение звуковой мощности с использованием 20-кратного логарифма отношения по основанию 10 (20 × log10(P/P0)).

  • На каждые 6 дБ амплитуда звука удваивается или уменьшается вдвое. На 12 дБ изменяется в 4 раза, на 18 дБ - изменяется в 8 раз, 20 дБ - изменяется в 10 раз, 40 дБ - изменяется в 100 раз и т.д.

  • Так как шкала логарифмическая, то полное уменьшение громкости (без звука) не может быть осуществлено.

  • 0 дБ - это максимальная амплитуда, возможная в цифровой аудиосистеме. Она является пределом ограничения звукового оборудования. Аудиозвуки с большими амплитудами, которые выходят за пределы диапазона 0 дБ, создают своего рода искажения, называемые клиппинг.

  • Чтобы избежать клиппинга, ваш звуковой микс должен быть настроен таким образом, чтобы выход мастер шины (подробнее об этом позже) никогда не превышал 0 дБ.

  • Каждые 6 дБ ниже предела 0 дБ звуковая энергия * уменьшается вдвое *. Это означает, что громкость звука при -6 дБ вдвое меньше, чем при 0 дБ. -12 дБ вдвое ниже, чем -6 дБ и так далее.

  • При работе с децибелами считается, что звук не слышен в диапазоне от -60 до -80 дБ. Таким образом ваш рабочий диапазон в целом находится между -60 дБ и 0 дБ.

К этому нужно немного привыкнуть, но этот подход более правильный и позволит вам лучше общаться с профессионалами в области аудио.

Аудиошины

Аудиошины можно найти на нижней панели редактора Godot:

../../_images/audio_buses1.png

An audio bus (also called an audio channel) can be considered a place that audio is channeled through on the way to playback through a device's speakers. Audio data can be modified and re-routed by an audio bus. An audio bus has a VU meter (the bars that light up when sound is played) which indicates the amplitude of the signal passing through.

Шина распложеная слева - это * мастер шина *. Эта шина выводит микс на ваши динамики, поэтому, как упоминалось выше в разделе * Шкала децибел *, убедитесь, что уровень вашего микса не достигает 0 дБ на этой шине. Остальные аудиошины могут иметь гибкую маршрутизацию. После обработки звука они посылают его на заданную шину. Шину назначения можно указать для любой аудиошины, кроме мастер. При маршрутизации звук всегда передается от шин справа к шинам слева. Это позволяет избежать бесконечных петель маршрутизации.

../../_images/audio_buses2.png

На изображении выше выход * Bus 2 * направлен на шину * Master *.

Воспроизведение аудио через шину

Для проверки проигрывания аудио на шине, создайте узел AudioStreamPlayer, загрузите аудиоданные и выберите целевую шину для воспроизведения:

../../_images/audio_buses3.png

Затем, переключите свойство Playing в значение On и звук будет воспроизведён.

См.также

Вам также может быть интересно прочитать Аудиопотоки.

Добавление эффектов

Аудиошины могут содержать всевозможные эффекты. Эти эффекты обрабатывают звук и применяются по порядку.

../../_images/audio_buses4.png

Информацию о том, что делает каждый эффект, см. в разделе Audio effects.

Автоматическое отключение шин

Нет необходимости отключать шины вручную, когда они не нужны. Godot определяет, что на шине нет сигнала в течение нескольких секунд, и отключает её (включая все эффекты).

../../_images/audio_buses5.png

Отключенные шины имеют синюю шкалу уровня сигнала вместо красно-зеленой.

Перестановка шин

Stream Player использует имена шин для идентификации, что позволяет добавлять, удалять и перемещать шины, сохраняя ссылку на них. Однако, если шина будет переименована, ссылка будет потеряна, и Stream Player будет выводить звук на Master. Эта система была выбрана потому, что перестановка шин - более распространенный процесс, чем их переименование.

Компоновка шин

Компоновка шины по умолчанию автоматически сохраняется в файле res: // default_bus_layout.tres. Пользовательские схемы шин могут быть сохранены и загружены с диска.