Методы позиционирования и сжатия звука
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
?о для звуков до полностью поглощающего или отражающего.
Очень важно иметь минимальную по размерам базу данных акустических полигонов, что бы минимизировать загрузку CPU. В играх должно быть задействовано около 50 звуковых полигонов в любой момент времени. Этого количества достаточно для описания сложной акустики и представления всех важнейших случаев прохождения звуков сквозь препятствия. Более того, звуковые полигоны должны быть так же точно определены, как и их эквиваленты в графике.
Материалы
Каждый раз, когда звук отражается от объекта, материал из которого сделан объект влияет на то, как сильно поглощается каждый частотный компонет звуковой волны и как много компонетов отражается обратно в окружающую среду. Материалы, используемые для звуковых полигонов могут быть определены в интерфейсе A3D 2.0.
Переменные материалов:
- Заранее определенные материалы: дерево, бетон, сталь, ковер.
- Отражающие свойства: меняются от полностью отражающих до совсем неотражающих звуки.
- Свойства звуковых преград: меняются от полностью прозрачных до непрозрачных для звуков.
После ввода всех необходимых данных, геометрический движок вычисляет ранние отраженные звуки и звуки прошедшие сквозь препятствия, основываясь на свойствах материалов. Уровень детализации звучания и режим реализации акустической модели могут быть установлены с помощью геометрического движка.
Звук прошедший через преграду (occlusions): геометрические алгоритмы вычисляющие то, как звук преодолевает преграду в виде поверхностей. Точность и качество реализации могут быть принесены в жертву скорости вычислений.
Один раз отраженные звуки: вновь, качество реализации может быть принесено в жертву скорости вычислений.
Менеджер сцены
Менеджер сцены использует высокоуровневую базу данных звуковой геометрии и управляет звуковыми полигонами, используемыми в сцене. Приложения создают высокоуровневые объекты, называемые стенами (walls), проходами (openings) и помещениями (rooms), которые могут быть использованы в акустической сцене. Обычно, программа загружает сцену и просто вызывает функцию реализации. Менеджер сцены использует акустическую сцену для определения соседства помещения (т.е. что смежно с помещением) и уровень слышимости. Слышны только те звуки, которые распространяются в помещении, где в данный момент находится слушатель, и звуки в смежных помещениях. Менеджер сцены определяет необходимые для данной сцены полигоны и пересылает их геометрическому движку для построения акустической модели.
Примеры высокоуровневых объектов:
- Стены: имеют свойства материала из которого они сделаны. Они могут двигаться и менять ориентацию в пространстве. Не все сцены должны отражать звук.
- Проходы: это отверстия в стенах; звук перемещается от одной стороны стены к другой стороне. Проходы могут быть открытыми и закрытыми.
- Помещение: это пространство, которое со всех сторон полностью окружено стенами.
- Сцена: это набор из помещений.
Менеджер сцены от Aureal описывет пути распространения звуковых волн для каждого уровня в форме упрощенных полигонов.
Использование технологии Wavetracing в играх
Реализация wavetracing весьма сложна. Существуют простые высокоуровневые способы доступа (через менеджер сцены и загрузчик сцены) для людей, которым нужен быстрый результат. Дополнительно, доступно управление на низком уровне для разработчиков, которые хотят "сделать акустику действительно ошеломляющей, т.е. совершенно на новом уровне".
Быстрый и простой способ расчета путей распространения звуковых волн
Быстрый и грубый способо добиться этого, это использовать менеджер сцены. По мнению Скипа Макилвейна (Skip McIlvaine) из Aureal, база данных графической геометрии может быть пропущена через конвертер, который преобразует все необходимые графические полигоны в звуковые полигоны за время загрузки уровня игры. Глобальные значения могут быть установлены для параметров объектов отражающих и препятствующих звуку. Кроме того, возможно произвести обработку базы данных графической геометрии заранее, прогнав алгоритм преобразования полигонов и храня базу данных звуковой геометрии в качестве отдельного файла-карты и подгружать этот файл во время загрузки уровня игры.
Тонкая регулировка wavetracing
Существует несколько способов, с помощью которых разработчик звукового оформления может тонко регулировать пути распространения звуковых волн для достижения лушей производительности и эффекта реалистичности:
- Индивидуально выбирать толщину стен и материал, из которого они сделаны.
- Заранее подготовить установки эха (reverb) для помещений.
- Оптимизировать акустическую геометрию с целью использования минимального набора полигонов.
Законченная картина
Результатом является последний шаг в сторону истинного реализма создаваемого звука: комбинация из 3D позиционируемого звука, акустики помещений и окружающей среды и точное представление звуковых сигналов для слушателя. Моделирование окружающей среды, реализованное Aureal, не имеет аналогов, даже EAX от Creative Labs не может сравниться по набору предоставляемых возможностей. Тем не менее, технология EAX более проста в реализации и меньше загружает CPU.
Технология Wavetracing не является быстро реализуемым эффектом, который может быть добавлен и так же легко использован, как запаздавшая мысль. Необходимо серьезное планирование перед реализ