Подтвердить что ты не робот

Разработка игр Sound Frameworks

Я работаю с командой, которая строит двигатель для различных 2D и 3D-игр. Проблема, с которой мы сталкиваемся, - это надежный, кросс-платформенный, звуковой API. Очевидно, что DirectX не может быть и речи из-за наших потребностей в кросс-платформенных возможностях. SDL хорош, и отлично работает, но пусть он смотрит на него. SDL_Mixer немного ограничен в том, что он может сделать. В настоящее время мы его используем, но когда мы в конечном итоге расширяем до 3D, это будет проблемой.

Я возился с OpenAL, но большая часть документации, которую я нашел, довольно устарела и, похоже, не работает так хорошо. Я хочу изучить OpenAL и пробиться через него, но я хотел бы быть более уверенным, что я не трачу свое время. Тем не менее, кроме учебных пособий DevMaster, я не видел много документации, которая утомляла меня. Если у кого-то есть лучший материал, чем я нашел, это было бы потрясающе.

Я также видел такие проекты, как FMOD, которые кажутся достойными, несмотря на лицензирование. Однако, как и OpenAL, у них почти несуществующая документация. Конечно, я могу налить код, чтобы вывести мои параметры, но это кажется немного болью, учитывая, что я, возможно, в конечном итоге заплачу за него.

В любом случае, мысли, комментарии, проблемы? Большое спасибо!

4b9b3361

Ответ 1

(примечание: у меня есть опыт работы с FMOD, BASS, OpenAL и DirectSound, и пока я перечисляю другие библиотеки ниже, я их не использовал).

BASS и FMOD оба хороши ( и на самом деле мне очень понравилась документация по FMOD, почему бы вам сказать, что она "не существует"?). Существуют также Miles Sound System, Wwise, irrKlang и еще несколько пакетов промежуточного программного обеспечения.

OpenAL предположительно является перекрестной платформой, и на каждой платформе он имеет свои собственные причуды. Это не совсем "открыто". И я не уверен, для чего это будущее. похоже, что он застрял, когда Creative завладел им. Тем не менее, недавно были предприняты попытки реализовать реализацию с нуля: OpenAL Soft.

Тогда есть API-интерфейсы платформы, такие как DirectSound или XAudio2 для Windows, Core Audio для OS X, ALSA для Linux, собственные API для консолей и т.д. Я думаю, что использование собственных API на каждой платформе имеет большой смысл; вы просто абстрагируете его под общим интерфейсом, который вам нужен, и на каждой платформе есть разные реализации. Конечно, это больше работает, чем просто использовать OpenAL, но OpenAL даже не доступен на некоторых платформах и имеет различные причуды на других платформах, которые вы даже не можете исправить (потому что нет исходного кода, который вы можете исправить). Лицензирование коммерческой библиотеки, такой как FMOD или Miles, является опцией в том смысле, что вся эта работа, зависящая от платформы, уже выполнена для вас.

Мы используем OpenAL на работе прямо сейчас, но подумываем о том, чтобы отказаться от него, потому что он просто никуда не денется, и мы не можем исправить причуды. Таким образом, хотя OpenAL легко начать работу, он не получает моего голоса как хороший вариант.

Ответ 2

Я использовал DirectX, FMOD и Wwise на различных платформах в отгруженных играх. Я не буду говорить о DirectX здесь, так как у других людей будет много отзывов: -)

Вот что вам нужно учитывать:

  • Лицензия, я ставлю это первым, потому что это может принять ваше решение за вас. Попросите вашего адвоката пройти через них и убедитесь, что вы понимаете стоимость и ограничения.

  • API - FMOD имеет очень чистый, минимальный API, который очень легко получить. Wwise предлагает немного больше с точки зрения функциональности, но его API кажется намного более крупным и громоздким с неловкими концепциями, чтобы окунуться.

  • Инструменты - Wwise имеет очень сложные инструменты, ориентированные на дизайнеров аудио, а не на программистов, если вы хотите дать звукорежиссерам много прямого контроля и место для экспериментов, Wwise может быть путем. FMOD догоняет инструмент, но его инструменты больше ориентированы на программистов, которые я чувствую.

  • Производительность. Это то, что вам нужно будет оценить самостоятельно, вы не можете сказать, что кто-то лучше другого, потому что это зависит от вашей платформы и типа игры. Вы можете получить статистику производительности, указанную вам, - возьмите их с солью, они вполне могут быть идеализированы в некотором роде. Определите свой бюджет производительности (например, 2 мс на кадр для звука, X количество каналов, количество X потоков) и выполните кучу тестов для разных звуковых форматов, частоты дискретизации и битовых глубин - нарисуйте эти присоски.

  • Поддержка. У обоих FMOD и Wwise есть очень хорошие каналы поддержки, хорошие технические парни. Проверьте, если поддержка стоит дополнительно, хотя.

Если вы просите меня выбрать один из них. FMOD - это действительно хороший продукт, эти парни делают отличную работу.

Ответ 3

Недавно я работал над заголовком AAA PC, который использовал FMOD. Наш аудиопрограммист любил его и был очень продуктивным, поэтому я бы подарил FMOD большие пальцы. Мы использовали FMOD только в Windows, поэтому я не могу вообще говорить о кросс-платформенных аспектах.

Ответ 4

Библиотека Bass работает на Mac и Windows и имеет хорошие примеры документации и SDK:

http://www.un4seen.com/

Ответ 5

Я отправил две игры для ПК с использованием Miles Sound System, и все получилось неплохо. MSS легко интегрируется, быстро и стабильно. Поддержка, которую вы получаете от RAD Game Tools, отличная. В результате эта библиотека использовалась в более чем 4500 играх, и в результате она прочная. Это тоже дешево!

С другой стороны, MSS представляет собой довольно низкоуровневую библиотеку по сравнению с FMOD или WWise. Библиотека не предоставляет никакого способа, чтобы звукорежиссер мог контролировать объемы звука, затухание, рандомизацию, затухание или просто что-либо еще, которое не хранится в самом звуковом файле. Вам нужно будет написать эти функции высокого уровня самостоятельно.

Вот почему я оцениваю WWise для своей следующей игры. Он имеет гораздо более развитый набор инструментов, чем Майлз. Потребовалось больше времени, чтобы встать и работать, но пока работает хорошо. Я не достаточно далеко, чтобы использовать его, чтобы действительно предложить рекомендации так или иначе.

Ответ 6

Wwise - это, пожалуй, самое полное решение для развития звука с точки зрения рабочего процесса. Способ, который он разработал, действительно экономит ваше время программирования и дает вам больше возможностей для экспериментов и создания сложных звуковых структур. С Wwise мы смогли сохранить проект для нашей команды.

Мне лично очень нравится их интерактивная музыкальная система. Он гибкий и позволяет вашей музыке плавно реагировать на ваши игровые входы.

Кроме того, поддержка Audiokinetic очень острая. Всегда готов и готов помочь.

Я рекомендую.

Ответ 7

Я также могу ручаться за FMOD, он довольно широко использовался в разработке игр благодаря инструментам и превосходной многоплатформенной поддержке. Это дизайнеры - действительно блаженство для работы. Тем не менее, это требует дорогостоящей лицензии для коммерческого развития.