Компьютерный звукВыпуск третий. Битва за трехмерный звук(c) Герман Иванов, февраль 2006 г.Cтатья была впервые опубликована в "Компьютерной Газете AZ"(г.Минск). При перепечатке ссылка на автора и газету обязательна. |
||
---|---|---|
Главная страница | Другие выпуски "Компьютерного Звука-2006" | Все статьи |
||
Современные игры немыслимы без трехмерного звука точно так же, как DVD-фильмы немыслимы без пятиканальной акустики Dolby Surround. Безусловно, можно замечательно обойтись без всех этих технологий и смотреть DVD по старинке, на ламповом телевизоре с монофоническим динамиком, а играть в игры, вообще отключив звук. Но тот, кто пользуется подобными режимами <совместимости>, теряет весьма значительный кусок общей атмосферы, заложенный в фильм или игру их создателями. Как оно вообще работает Под трехмерным звуком компьютерных игр подразумевается обеспечение игрока возможностями, во-первых, точно определять направление на какой- либо звучащий объект игрового мира, а во-вторых, воссоздание общей звуковой перспективы в локациях игрового мира. Человек определяет направление на звук с помощью обоих ушей - одно ухо не дает мозгу достаточной информации для локализации источника. Звук, идущий с какой- либо одной из сторон, попадает <напрямую> в одно ухо и проникает сквозь черепную коробку, прежде чем попадет во второе ухо. По характеру искажения звука, возникшего при прохождении препятствия, мозг рассчитывает направление на сам звучащий объект. В силу особенностей нашего организма (и законов школьной физики) низкочастотные звуки локализуются человеком очень плохо - основную информацию о направлении несет нам среднечастотный и высокочастотный диапазон, причем значащими являются лишь некоторые частоты в этом диапазоне. В качестве примера: человек намного легче определит направление на летящего комара, чем на гудящий теплоход. В том случае, если мозгу недостаточно информации для того, чтобы точно локализовать объект, человек инстинктивно совершает небольшой поворот головы. Подобное подсознательное перемещение позиции головы и дает мозгу вспомогательную информацию для точного расчета местоположения источника звука. Эта практика особенно актуальна для локализации неподвижных источников звука - быстро передвигающиеся объекты сами любезно заваливают наш мозг массой информации о своем местонахождении. Крутить головой в этом случае нет никакой необходимости - источник звука сам крутится вокруг нее. Источник звука, находящийся сзади, мы слышим более <глухим> - мочки ушей фильтруют высокочастотные составляющие пришедшего звукового сигнала, и он попадает в оба уха уже искаженным, опять-таки, дополнительно локализуясь при проходе сквозь черепную коробку. Звук от своего источника попадает к нам в уши не только по прямой линии <источник - наша голова>. Он застревает в различных препятствиях, "вырезающих" из его спектра определенные наборы частот, а также отражается от этих препятствий и стен помещений, формируя при этом фазовое запаздывание - <эхо>. Причем эхо может быть как большим с задержкой в несколько секунд, так и <мгновенным> микросекундным. Все нюансы отраженного звука вкупе с оригинальным вариантом, пришедшим по прямой линии, рассчитываются в режиме реального времени нашим <бортовым компьютером>, давая нам информацию об окружающей нас среде. Церковь звучит одним образом, большая железная труба - другим, ванная комната - третьим, захламленный чердак - четвертым. Летучие мыши, слышащие ультразвук, и вовсе встроили в себя локатор, работающий на этом принципе (помните, я вам рассказывал о важности высоких частот?). Человек такими возможностями не обладает, хотя сумел-таки построить себе радар на еще более высокочастотном <звуке> - радиоволнах. Тем не менее, человек вполне в состоянии даже с завязанными глазами понять находится: в морском ли он, скажем, порту или в подвале жилого дома. Окружающее его звуковое поле несет вполне достаточно информации для того, чтобы это точно определить. Алгоритм, который можно изложить словами на бумаге, можно и запрограммировать в компьютерной программе. Именно так и рассуждали разработчики звуковых карт, поддерживающих трехмерный звук. Если наш мозг получает информацию об окружающей среде, структуре материала стен помещений и его объеме, направлении на те или иные звучащие объекты благодаря определенным искажениям изначального звукового сигнала, то что, собственно говоря, нам мешает взять и запрограммировать эти искажения? Вместо простого усиления или ослабления звука в той или иной звуковой колонке, как это делается в <стерео> и <квадро>, можно взять и заранее обработать изначальный сигнал, наложив на него эхо, отражения и затухание звука. Добавляем обсчет искажения звукового сигнала при проходе через наш череп и мочки ушей и засылаем этот сигнал в уши игрока. Мозг, получив хорошо знакомые ему звуковые паттерны, привычно их раскодирует, разложив на <лево-право>, <спереди-сзади>, <сверху-снизу>. Разумеется, кое-что сделать очень трудно, а значит, дорого. Другое требует огромных вычислительных ресурсов, которыми звуковые процессоры просто не обладают, и его пришлось упростить. Третье: а третье вообще непонятно по какому алгоритму вычисляется в нашем <биологическом бортовом процессоре>, и его пришлось отбросить. Каждый человек имеет индивидуальные особенности слуха и даже индивидуальную форму ушей. Большинство жителей мегаполисов в возрасте более 30 лет теряют возможность слышать высокочастотные звуки с частотой выше 16 КГц. Уши каждого человека имеет свою собственную индивидуальную амплитудно-частотную характеристику, на некоторые частоты у него могут быть наложены <фильтры>. К примеру, вполне вероятна такая ситуация, при которой вы хорошо слышите, скажем, 12 КГц и 14 КГц, а 13 КГц вообще не слышите. Плюс каждый из нас индивидуально учит свой мозг опознавать те или иные звуки, а звуковые карты реализуют лишь базовые алгоритмы, да и то на примитивном уровне. Тем не менее, как гласит известная поговорка, <в стране слепых и кривой король>. Современные звуковые карты, реализуя алгоритмы, о которых я вам только что рассказал, умеют худо-бедно обманывать наш мозг таким образом, что мы начинаем слышать то, чего нет в реальности. Можно <услышать> себя стоящим на утесе, о который внизу разбиваются морские волны, почувствовать себя ползущим по пыльной трубе вентиляции с пистолетом в руках или находящимся в огромной пещере. Пули будут, как в песне, <свистеть у виска>, а гильзы станут, подпрыгивая, кататься именно по полу, а не по внутренней поверхности вашей черепной коробки. Карта Creative SB Live! Возможность выпуска в ближайшем будущем конкурирующих звуковых решений с системой поддержки трехмерного звука подтолкнула фирму Creative Labs к разработке своей собственной карты, обладающей аналогичными возможностями. Такой картой стала модель Sound Blaster Live!, выпущенная осенью 1998 года. Да-да! Речь у нас идет о той самой звуковой карте, которая и сейчас установлена в компьютерах многих из вас. Поздравьте свою <старушку>: этой осенью ей исполнилось 7 лет! По компьютерным меркам это очень преклонный возраст. В те годы в наших компьютерах стояли только что появившиеся в продаже микропроцессоры Celeron II-300A, а в форумах Интернет яростно спорили между собой <фанаты> видеокарт Voodoo2, S3 Savage3D и Riva TNT. Карта SB Live! изготовлена на чипе EMU10K1, выпущенном дочерним предприятием фирмы Creative, называющемся EMU. Название этой фирмы хорошо известно музыкантам - данная фирма специализируется на разработке и производстве профессиональных эффект-процессоров, используемых при создании музыкальных произведений. Вот Creative и решила воспользоваться их готовыми наработками в области создания различных звуковых эффектов - на этот раз уже в <игровой> среде. Чип аппаратно поддерживал стандарт DirectSound3D - один из компонентов библиотеки DirectX, отвечающий в ней за трехмерное позиционирование звука. Разработчик игры задает параметры звучания конкретного источника звука - например, громкость и положение в пространстве, - все остальное карта делает сама, обрабатывая на лету сигнал от звукового источника в зависимости от его положения. Фирменная технология Creative, называющаяся EAX (в этом чипе была объявлена версия 1.0), заключается в описании фиксированного набора предустановок, описывающих звучание различных помещений. Благодаря EAX стандартный набор функций DirectSound3D расширяется дополнительными эффектами эха и реверберации. Если игрок, скажем, падает в воду, то звук вокруг него приобретает характерное подводное звучание, в том случае, если игрок забирается в трубу, его окружает металлическое эхо, соответствующее этой трубе. Чип поддерживал 26 вариантов звучаний различных сред. Если этих предустановок было недостаточно, то их можно было дополнительно настроить с помощью трех дополнительных параметров - например, уменьшить или, напротив, увеличить эхо. Готовых алгоритмов трехмерного позиционирования звука у фирмы Creative не было, поэтому основной упор в продвигаемых технологиях был сделан на имитации окружающей игрока среды. Возможно, я и ошибаюсь, но, на мой взгляд, все позиционирование источников звука в SbLive сводилось к банальному панорамированию источника звука между четырьмя колонками. В лучших традициях Creative Labs выпустила огромное количество незначительных модификаций одной и той же карты. Условно эти карты можно поделить на два поколения, называющиеся в народе <старый SB Live!> и <новый SB Live!>. Карты первого поколения поддерживали вывод звука только на 4 канала (схема 4.0), второе поколение принесло пользователю поддержку схемы динамиков 5.1. Чип EMU10k1 устанавливался в следующие карты Creative: Карты первой волны Sound Blaster Live!: Sound Blaster PCI 256 - модели CT4890, CT4891 и CT4893. Sound Blaster PCI 512 - модели CT4820, SB0150 и CT4790. Оригинальная карта Sound Blaster Live! - модель CT4620. Карта Sound Blaster Live! Value - модели CT4660 и CT4670. Карты Live! X-Gamer, Live! MP3+, Live! Player 1024, Live! Platinum: (все это модель CT4760). OEM-вариант поставки карты: модель CT4780. Карты Sound Blaster 5.1 разнообразных модификаций В картах нового поколения по сравнению с предыдущими моделями добавился центральный канал и канал сабвуфера, что и было отражено в названии карты. Серия состояла из следующих карт: The Live! X-Gamer 5.1, Live! MP3+ 5.1, Live! Player 5.1, Live! Platinum 5.1, Live! Digital Entertainment 5.1 (модели SB0060, SB0100, SB0102, SB0220, SB0222, SB0103 и SB0105 соответственно), а также карта Sound Blaster Value 5.1 (SB0101). Помимо коробочных retail-вариантов, существовали еще и карты в OEM-исполнении (модели CT4830, CT4831, CT4832, CT4850, CT4870, CT4871 и CT4872), а также варианты, выпущенные для фирмы Dell (номер модели выглядит как с SB02xx). Карта Aureal Vortex Звуковая карта SbLive! появилась в продаже практически одновременно со своим главным конкурентом, получившим название Aureal Vortex 2. Противостоять гиганту Creative решилась довольно-таки широко известная, в основном, за счет своих видеокарт, <отверточная> компьютерная фирма Diamond Multimedia. Сама по себе она никогда ничего не разрабатывала, но ей обычно удавалось собирать удачные продукты, основанные на патентованных разработках третьих фирм. Так получилось и на этот раз: взяв за основу чип AU8830A2, произведенный фирмой Aureal, Diamond выпустила на его основе звуковую карту Diamond Monster MX300. Главной <фишкой> этой карты являлась возможность расчета в режиме реального времени отражений звука от объектов игрового мира с учетом геометрии помещения и наличия в нем тех или иных препятствий (по-умному эта технология называется Wavetracing). Помимо этого, карта аппаратно поддерживала алгоритмы, позволяющие эмулировать механизмы ориентации человека в пространстве с помощью двух ушей (HRTF-фильтры). Разработчики чипа обещали гарантированную локализацию слушателем не только источников звука, находящихся от него слева и справа, но также и находящихся <сзади-слева>, <спереди-справа>. Не ограничиваясь столь смелыми по тем годам заявлениями, они также гарантировали угадывание игроком вертикального позиционирования звука в игре, то есть комбинаций <слева-сзади-сверху> и <справа-спереди-снизу>. И все эти чудеса нам обещали при использовании всего лишь обычных стереофонических наушников. Несмотря на то, что карта имела четыре выхода на колонки, упор в алгоритме был сделан в основном на двухколоночные системы. Объясняется это, скорее всего, тем, что изначально алгоритмы Aureal разрабатывались для нужд военных летчиков и космонавтов, а в самолетах и космических кораблях места мало, колонки там особенно расставлять негде, а вот наушники на голову надеть можно и в скафандре. Тыловые колонки MX300 обходились куда как более простым алгоритмом. Фактически они были нужны лишь для <подзвучки> источников звука, находящихся сзади, задавая для них смещение источника звука влево и вправо. Первую партию карт MX300 покупатели расхватали практически мгновенно, несмотря на то, что стоили они весьма хороших денег (около $100). Первое, что порадовало покупателей, - не обещанные 3D-эффекты, а хорошие по тем временам параметры самого устройства. Карта была хорошо спроектирована, практически не шумела и весьма неплохо играла обычную музыку, а также поддерживала декодирование AC3-звука (DVD-фильмы). Прилагающиеся к карте программы демонстрации 3D-звука, написанные самой Aureal, действительно позволяли ориентироваться в пространстве на слух. Разве что подкачала обещанная возможность определять верх и низ. Лагерь пользователей Vortex2 раскололся на две примерно равные половины, одна из которых отличала <верх-низ>, а вторая - нет. Насчет <переда-зада> никаких вопросов ни у кого не возникало - действительно, звук локализовался изумительно. Правда, вышедшие вскоре игры Half-Life и Heretic2 несколько поубавили волну восторгов фанатов MX300. Выяснились два неприятных нюанса, связанных с алгоритмами, используемыми картой. Ой, не зря в демонстрации, прилагавшейся к карте, использовалась пчела, летающая вокруг вашей головы! Алгоритм HRTF, заложенный в Vortex, замечательно работал для движущихся объектов, но сразу же пасовал, если речь заходила о неподвижном звучащем объекте. Почему так происходит, я вам подробно рассказывал в теоретической части статьи. Дальнейшая история этой карты весьма печальна. Aureal умудрилась поссориться с фирмой Diamond Multimedia - насколько помню, они там что-то не поделили по поводу драйверов, и последняя перестала использовать их чипы в своих картах. Aureal еще некоторое время пыталась самостоятельно выпускать OEM звуковые карты, но была задавлена катком Creative в лице ее карт Sound Blaster!. В конце концов, Aureal потерпела банкротство, и все их интересные патенты и разработки были скуплены на корню главным конкурентом - фирмой Creative. По большей части эти разработки были положены под сукно, но порой из очередных пресс-релизов, повествующих о ноу-хау карт Creative, нет-нет да и выглянут длинные уши технологий Aureal. Приложение к выпуску: Рекомендации по выбору карт Sblive! По нынешним временам возможности этого чипа выглядят примитивными, но тогда даже они казались чудом. Со времен выпуска SB Live появились на свет версии 2, 3 и 4 расширений EAX. В новых расширениях учитывается большое количество параметров - таких, например, как размер помещения, отражение, поглощение и затухания звука в разных материалах, панорамирование отраженного сигнала и многое, многое другое. Подробный рассказ о возможностях современных звуковых карт выходит за рамки этой моей обзорной статьи. Всех заинтересовавшихся я отсылаю к замечательному материалу <Современные звуковые технологии в играх>, опубликованному на сайте www.ixbt.com. В этой статье все нюансы реализаций различных технологий разложены по полочкам. Все это SBLive! не умеет, и поэтому для современных игр он практически непригоден. С точки зрения воспроизведения музыки SBLive! карта более чем посредственная - об особенностях карт Creative у нас пойдет речь в следующий раз. В продаже они сейчас не попадаются, а если вам и попадутся, то стоить будут малореальных денег. Сам я больше 5 долларов за нее бы не дал. Aureal Vortex Я не зря посвятил так много места рассказу об этих картах. История историей, но цель этой моей серии статей вполне утилитарна. Дело в том, что карты на основе чипов Vortex2 до сих пор широко продаются в магазинах. Если вашей целью является просто прослушивание mp3-музыки и просмотр DVD-фильмов, карты на чипе Vortex2 станут вашим наилучшим выбором. Дело в том, что стоимость этой карты в рознице сейчас не превышает 8 долларов. Никакого лучшего по качеству звучания и возможностям звукового решения за эти деньги просто не существует в природе. Единственный, но очень серьезный недостаток этих карт заключается в том, что для них не существует полноценных драйверов под операционные системы, отличные от Windows 98 и Windows 2000. Фирма разорилась до появления Windows XP, и драйверы делать стало некому. Впрочем, все не так плохо: Windows XP знает эту карту <как родную>. Как только вы установите карту в компьютер, Windows сама ее обнаружит и установит под нее драйвер из своего дистрибутива. Но в этих драйверах нет поддержки особых 3D-эффектов карты (A3D 2.0 и EAX1). Вы получите обычную четырехканальную звуковую карту с аппаратным ускорением DirectSound и DirectSound 3D, на голову лучшую, чем любой современный AC'97 кодек, но не способную порадовать вас в компьютерных играх трехмерным позиционированием или эффектами окружающей среды. Если вы покопаетесь в Интернете, то сможете найти там и драйверы с поддержкой EAX1 (как у SBLive!), но звучит оно так, что лучше бы его и не было. Зато, если вы запустите DVD-фильм, то драйверы карты радостно подморгнут вам окошком с логотипом a3d, показав тем самым, что карта подключилась к декодированию AC3 5.1 звука. Вот такую любопытную карточку можно сейчас купить всего лишь за 8 долларов. В продаже попадается несколько разновидностей карт на чипах от Aureal. 1. Карты на устаревших чипах Au8810, Au8820. Связываться с ними не стоит, хотя при их стоимости около 5 долларов и отсутствии в наличии карт на Vortex2, может быть, от них и есть толк. Существует довольно много разных карт на этих чипах, но по какой-то причине подавляющее их большинство обладает характерной формой печатных плат, по которой их легко сразу опознать. Печатная плата у них не квадратная или прямоугольная, а треугольная. Поэтому, если вам предложат <треугольную> карту на чипе Vortex, сразу проверяйте надпись на ее главном чипе. Скорее всего, там будет написано нечто вроде 2. Карта Diamond Monster MX300. Именно о ней я вам только что и рассказывал. Внешний признак карты - надпись 3. Карты, выпускавшиеся самой фирмой Aureal (OEM). В прайсах компьютерных фирм они обычно фигурируют под названием SQ2500 (не перепутайте с SQ1500!). Сравнительно небольшая плата, построенная на чипе AU8830. Обратите внимание на отсутствие Герман Иванов. Февраль 2006 г. Читать дальше... |
||
Copyright © 2006 G.I. All Right Reserved. |