Компания Valve объявила об открытии исходного кода инструментария для работы с объёмным звуком Steam Audio SDK и всех связанных с ним плагинов. Код написан на языке С++ и опубликован под лицензией Apache 2.0, позволяющей адаптировать Steam Audio для своих потребностей и задействовать модифицированные версии в различных продуктах, в том числе в коммерческих, без необходимости открытия исходных текстов внесённых изменений. Заинтересованные в развитии Steam Audio разработчики из сообщества также получили возможность участия в разработке и передачи своих изменений в проект. При этом компания Valve как и раньше продолжит сопровождение и развитие Steam Audio, но уже как открытого проекта. Поддерживается работа на платформах Linux, Windows, macOS, Android и iOS.
Steam Audio предоставляет широкий набор инструментов для работы с объёмным 3D-звуком в приложениях и симуляции звукового окружения с учётом его восприятия слуховым аппаратом слушателя. Steam Audio может оказаться полезен в компьютерных играх и системах виртуальной реальности для формирования реалистичного адаптивного звукового окружения, меняющегося в зависимости от положения слушателя, поворота или наклона головы, изменения расстояния от источника звука, отражения звука от предметов и появления препятствий между слушателем и источником звука.
Основные возможности Steam Audio:
- Поддержка интеграции с игровыми движками Unity 2017.3+ и Unreal Engine 4.27+, а также со средой для создания звуковых эффектов FMOD Studio 2.0+. В разработке находится модуль для интеграции с системой создания звуков Wwise.
- Автоматическая симуляция в реальном времени распространения звука в окружающей среде и его взаимодействия с окружающими предметами.
- Расчёт отражения звука и поглощения стоящими на пути предметами с учётом геометрии сцены.
- Отслеживание поворота и позиции слушателя при использовании в системах виртуально реальности для формирования реалистичного звукового окружения. Поддержка различного оборудования для систем виртуальной реальности.
- Генерация бинаурального 3D-звука с использованием HRTF для изменением формы сигнала для каждого уха с учётом особенностей восприятия звуковых волн ушной раковиной и положения головы, относительно источника звука.
- Поддержка формата объёмного звучания Ambisonics, учитывающего распространение звука не только в горизонтальной плоскости, но и в вертикальной (для определения сверху или снизу источник звука).
- Поддержка “запекания” (Baked Propagation) звука для статических сцен, позволяющего заранее сформировать и сохранить звуковые эффекты на стадии проектирования сцены для повышения качества и снижения потребления ресурсов во время выполнения (не нужно на лету рассчитывать параметры отражения, поглощения и преломления звука, если сцена не меняется).