Цифровой звук

         

MacroFX


Мы уже говорили выше, что с помощью HRTF и TCC можно воспроизвести качественный 3D звук. Но есть один нюанс. Обычно большинство измерений HRTF производятся в так называемом дальнем поле (far field, на дистации более 1 метра до источника звука), т.к. это существенно упрощает вычисления да и в большинстве игр воспроизводится звук от источников, находящихся на расстоянии от 1 метра и больше от слушателя. При этом, если источник звука находится на расстоянии до 1 метра от слушателя, т.е. в ближнем поле (near field), тогда эффективность использования HRTF снижается. Дело в том, что для создания звучания от удаленного источника звука достаточно добавить к основному звуковому сигналу реверберацию. Иногда можно обойтись и без реверберации, сократив высокочастотные компоненты в основном звуковом сигнале. Если источник звука находится в ближнем поле, подобные решения не применимы. Но необходимость в воспроизведении звука от источников в ближнем боле нередки. Например, в игре типа RPG может возникнуть необходимость нашептать подсказку непосредственно в ухо игроку, а в FPS игре часто необходимо воспроизвести звук пролетающих рядом с головой игрока пуль. Все эти эффекты нельзя вопроизвести, если HRTF измерялись на дистанции от одного метра и более, т.е. в дальнем поле. Тем не менее, измерить HRTF для всей области ближнего поля очень сложно, а использование дискретных наборов HRTF, сделанных, например, для дистанций 1 м, 0.9 м, 0.8 м и т.д. не позволит сделать звук от движущегося объекта естественно плавным, он будет скачкообразным. Решением проблемы является использование единого набора универсальных HRTF для ближнего поля с использованием дополнительного алгоритма.

Этот алгоритм был создан Sensaura и получил имя MacroFX. В результате работы MacroFX можно создать ощущение, что источник звука расположен очень близко к слушателю, так, будто источник звука перемещается от колонок вплотную к голове слушателя и вплоть до шепота внутри уха слушателя. Достигается такой эффект за счет очень точного моделирования распространения звуковой энергии в трехмерном пространстве вокруг головы слушателя, преобразования этих данных в тесном взаимодействии с HRTF функциями.
Особое внимание при моделировании уделяется управлению уровнями громкости и модифицированной системе расчета задержек по времени при восприятии ушами человека звуковых волн от одного источника звука (ITD, Interaural Time Delay). Для примера, если источник звука находится примерно посередине между ушами слушателя, то разница по времени при достижении звуковой волны обоих ушей будет минимальна, а вот если источник звука сильно смещен вправо, эта разница будет существенной. Только MacroFX принимает такую разницу во внимание при расчете акустической модели. Все эти вычисления происходят до начала работы алгоритмов TCC, но сразу после расчета HRTF для всех источников звука.



В DS3D предусмотрено три зоны (две из них показаны на рисунке слева). Зона 0 (ее нет на рисунке) в ней располагаются сильно удаленные источники звука, которые имеют постоянную интенсивность, не зависящую от расстояния. Источники в этой зоне могут не приниматься во внимание, т.е. слушатель их не слышит, либо они используются для формирования реверберации. Зона 1 это т.н. дальнее поле, в ней располагаются источники на расстоянии более 1 метра от слушателя и до определяемой разработчиком границы. В этой зоне интенсивность источников звука обратно пропорциональна расстоянию до слушателя. В зоне 2 (ближнее поле, расстояние до 1 м от слушателя) все источники звука имеют постоянную интенсивность. Это сделано для того, чтобы уровень громкости не превысил допустимого барьера и с целью ограничения нагрузки на шину данных.



MacroFX предусматривает 6 зон, где зона 0 (это дистанция удаления) и зона 1 (дальнее поле) будут работать точно так же, как работает дистанционная модель DS3D. Другие 4 зоны это и есть near field (ближнее поле) в стиле MacroFX, покрывающие дистанцию рядом с головой слушателя, левое ухо, правое ухо и пространство внутри головы слушателя. При этом здесь также вводятся ограничение на дистанцию, чтобы сократить накладные расходы при вычислениях. Поэтому в зоне 2 используется стандартный алгоритм Near-Field FX, а в зонах 3, 4 и 5, которые начинают работать с расстояния в 20 см, используется как таковой алгоритм MacroFX.Эти три зоны рассчитаны на источники звука, расположенные очень близко к ушам пользователя (левому или правому). Если источник звука должен находится как бы в голове пользователя (например, переговоры авиадиспетчеров в авиасимуляторе), то для этого используется зона 5.

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


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