звуковое насилие ПАЛАГИН АНТОН AKA TONY Спецвыпуск: Хакер, номер #064, стр. 064-030-1 (TONY@EYKONTECH.COM) УЧИМСЯ ПРАВИЛЬНО БУДИТЬ СОСЕДЕЙ ПО НОЧАМ ЗВУКОВОЕ СОПРОВОЖДЕНИЕ ПОКА ИГРАЕТ В КОМПЬЮТЕРНЫХ ИГРАХ ТОЛЬКО ВТОРОСТЕПЕННЫЕ РОЛИ. СИЛЬНЫЙ РАЗБРОС ПО КАЧЕСТВУ АУДИОАППАРАТУРЫ, КОТОРОЙ ПОЛЬЗУЮТСЯ ИГРОКИ, ПОКА НЕ ПОЗВОЛЯЕТ ЗВУКУ ВСТАТЬ НА ОДНУ СТУПЕНЬКУ С ГРАФИКОЙ ТАК, КАК ЭТО ПРОИЗОШЛО В КИНОИНДУСТРИИ synopsis Владельцев интегрированных домашних комплексов развлечений можно пересчитать по пальцам, а обладателей качественной аппаратуры — не сыскать и днем с огнем. Вот почему не во всех играх можно встретить качественный звук, который гармонично дополняет игровой процесс. Обычно хороший звук присутствует в симуляторах техники и экшенах, то есть в играх, где есть честное трехмерное пространство, по которому игрок свободно перемещается. В подобных играх применяется трехмерное позиционирование звука и его обработка EAX-подобными эффектами, которые подчеркивают звуковые свойства помещения, в котором находится игрок. Чтобы ты воспринимал сцены поглубже и поэмоциональнее, талантливые дизайнеры игр динамически оперируют музыкальным сопровождением и звуковыми эффектами: ломание дверей, взрывы, злобные крики и рыки и т.д. Помню, как после недели игры в System Shock 2 я некоторое время пугался, если слышал какие-нибудь визжащие звуки — настолько хорошо мой мозг запомнил ситуации, в которые попадал герой игры после того, как раздавались вскрики-визги. Для качественного воспроизведения звуков обычно не хватает возможностей API операционной системы, и разработчики используют специализированные звуковые библиотеки. В этой статье я расскажу о том, как работать с кросс-платформенной библиотекой FMOD. Принципы работы с прочими библиотеками похожи на описанные как две капли воды. Этот инструмент довольно часто используется в играх, поддерживает и PC, и Mac, и все современные игровые консоли, в том числе консоли следующего поколения PlayStation 3 и Xbox 360. FMOD доступен для скачивания и бесплатен для некоммерческого использования. Не стоит забывать, что некоторые звуковые форматы, такие как MP3, также требуют лицензионных отчислений, поэтому в коммерческих продуктах стоит задуматься о бесплатных альтернативах, например OGG. инициализация Методы библиотеки возвращают результат своего выполнения FMOD_RESULT. Если это значение не равно FMOD_OK, то произошла ошибка. Диагностическое сообщение об ошибке можно получить с помощью функции FMOD_ErrorString(). FMOD поддерживает два интерфейса С и С++, названия функций и методов классов, а также их сигнатуры в этих интерфейсах идентичны. Функциональность FMOD расширяется с помощью плагинов, из них поддерживаются следующие: DSP (digital signal processing), форматы данных, вывод звука. //Создаем системный объект result = FMOD::System_Create(&system); //Проверяем версию библиотеки result = system->getVersion(&version); if (version < FMOD_VERSION) { printf("Error! You are using an old version of FMOD %08x. This program requires %08x\n", version, FMOD_VERSION); exit(-1); } //Получаем параметры конфигурации акустики пользователя, установленных в панели управления. |