Технология создания 3D звука

         

Zoned effects



Zoned effects

Теперь, в СДК документации появилось еще понятие Зон, очень похожее на Room или Environment (на самом деле означает то же самое). Creative Labs рекомендуют разбивать визуальную геометрию на некие зоны, в каждой из которых будут свои свойства — свой пресет для реверберации. Если игра (программа) знает, в какой из зон находится слушатель и все источники, то можно установить соответствующие параметры автоматически. Целесообразнее разбивать на зоны в редакторе уровней, где audio designer сможет расставить идентификаторы для зон и параметры реверберации.

EAX Advanced HD 4 дает больше возможностей для создания плавных переходов между зонами. Как и в ЕАХ3, отслеживается текущая зона (environment), в которой находиться слушатель, и, когда совершается переход в другую зону, включается операция морфирования. Но теперь это уже может быть морфирование параметров в слотах, то есть необязательно каждый раз загружать параметры.

Например на слайде видны 3 зоны (3 environments). Зона 1 — некое цилиндрообразное помещение, Зона 2 — маленькое помещение с низким потолком и Зона 3 — длинный коридор. В каждом из них будет свой специфический эффект реверберации. Мы загружаем все 3 пакета с параметрами в слоты и когда нужен будет переход — плавно морфируем параметры (см. Environment Morphing).

Особо надо подчеркнуть эффекты панорамирования (Reverb / Reflections panning) и окклюзии. В эти же слоты, которые мы рассмотрели выше, можно будет загрузить несколько разных Environment Reverb-ов для каждой из Зон и динамически менять или морфировать один в другой для полной реалистичности звучания.

На иллюстрации видно, что источник звука находиться в Зоне с пресетом 3, а слушатель а зоне 2. Зона 3 соединена с зоной 2 дверным проемом (Эффект Exclusion — direct path проходит, отражения приглушаются и фильтруются). Зона 3, тем не менее, соединена с Зоной 2. Итак, прямой путь источника звука и приглушенные с помощью окклюзии (в данном случае exclusion) отражения из Зоны 3 проходят в Зону 2, отражаются тут и попадают к Слушателю. На этом можно было и закончить, но у нас есть Зона1 позади слушателя. Сейчас там нет источников звука (если бы был, то и прямой и отраженный пути попали бы на слушателя и соответственно бы провзаимодействовали с Зоной 2). Но, мы можем настроить вектора для панорамирования таким образом, что отражения из Зоны 2 будут попадать в Зону 3, взаимодействовать там и попадать обратно к слушателю. Таким образом, мы получим очень реалистичную звуковую сцену.

Ну вот, вкратце, что нас ждет в ближайшем будущем. Это все, конечно, красиво на словах, а когда все дойдет до реализации — все будет не так радужно, как бы нам хотелось. Основной проблемой будет определение в какой зоне находиться источник звука, правильная загрузка параметров ближайших зон и трассировка каждого источника на предмет Occlusions, Obstructions или Exclusions. Конечно же, совершенно необязательно включать в игру все эффекты, предлагаемые ЕАХ4. Вполне возможно, что в вашем проекте достаточно только реалистичного Environment Morphing и эффекта звука за стенкой — Occlusion.

При подготовке статьи использовались материалы сайта iXBT.com

Отдельное спасибо (Special Thanks)
Chen Reed // Creative Labs for GDC 2003 Slides and EAX4 SDK
Dmitry Gait // Action Forms for artwork help



Содержание раздела