Skip to content

itmogamedev/MSc24-ReverbAlgorithm

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Моделирование пространственного восприятия и распространения звука в виртуальном окружении в реальном времени

В ходе работы был разработан метод для динамического расчета параметров реверберации с применением трассировки лучей применительно к библиотеке API FMOD, Данный метод позволяет в интерактивном режиме применять параметры реверберации в зависимости от формы виртуальных помещений и движения виртуального персонажа.

Данный алгоритм является частью коммерческого проекта.

Схема работы алгоритма:

  1. Строится сцена для библиотеки трассировки лучшей Embree (SoundScene.cs, SoundMesh.cs).
  2. При построении используется информация о материалах (AcousticMaterialSettings.cs)
  3. Создается поток для расчета реверберации. Потоками управляет Reverberator.cs
  4. Сама трассировка осуществляется в ReverbSimulator.cs
  5. Расчет параметров SFX Reverb — в ReverbEstimator.cs
  6. Результаты складываются в ReverbParams.cs
  7. Применяются там же в методе Apply

Описание

На схеме представлен подробный процесс интеграции акустической симуляции в игровой движок с использованием FMOD Studio. Процесс разделен на два основных потока: поток акустического симулятора и игровой поток.

image

Поток акустического симулятора

Геометрия сцены и акустические материалы: Начальный этап, где определяются физические и материальные свойства сцены, что критично для точности акустических расчетов.

Трассировщик акустических лучей: Алгоритм трассировки лучей используется для моделирования путей звуковых волн, их взаимодействия с объектами сцены и последующих отражений.

Импульсный отклик: Результаты трассировки лучей используются для создания импульсного отклика, который симулирует, как звук будет восприниматься в данной среде.

Вычислитель параметров реверберации: Основываясь на импульсном отклике, вычисляются параметры реверберации, которые будут использоваться для акустической обработки звуков в игре.

Игровой поток

Игровая логика: Управляет поведением игры, включая звуковые события, и обрабатывает действия пользователя в реальном времени.

Позиция и ориентация слушателя: Определяет, где и как ориентирован слушатель в игровом мире, что влияет на акустическое восприятие.

FMOD Studio: Используется для динамической обработки и микширования всех аудио сигналов в игре.

Возвратные каналы и 3D Spatializer: Реализуют пространственное позиционирование звука и добавляют акустические эффекты, такие как реверберация, используя SFX Reverb.

EQ и микшер: Обеспечивают финальную обработку звука, применяя эквализацию и сведение всех звуковых дорожек перед их воспроизведением.

Устройство вывода звука: Воспроизводит обработанный звук через аудиосистему пользователя.

Взаимодействие между потоками

Импульсные отклики и параметры реверберации, сгенерированные акустическим симулятором, передаются в игровой поток и используются для реального времени регулировки звуковой сцены в FMOD. Игровая логика обеспечивает актуальность данных о позиции слушателя, которые важны для корректного пространственного воспроизведения звука. FMOD Studio манипулирует звуковыми событиями в зависимости от акустической среды, моделируемой на основе данных из акустического симулятора.

Оценка работы алгоритма

Для оценки работы алгоритма были записаны звуки ходьбы, бега и стрельбы в различных типах помещений. Эти записи использовались для создания опроса, целью которого было установить, насколько восприятие звука участниками соответствует окружению. Для участия в опросе была выбрана фокус-группа, включающая людей с различными интересами и уровнями музыкальной подготовки: от активных игроков и людей, далеких от игровой индустрии, до людей с развитым музыкальным слухом и тех, кто не обладает подобными навыками. Основная задача участников заключалась в том, чтобы только по записям звуков определить тип помещения, материал стен и действия игрока.

Ссылка на опрос: https://forms.gle/KE51K7QeysZ4xo288

Более подробное описание работы можно найти по ссылке: Преддипломная-2-66.pdf

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%