[Тутор 3.8.6] Создание внутриигрового аудио с помощью Wwise и SDLMixer.
Заждались, наверное. Ладно, начнём.
Примечание: у вас уже должен быть установлен Audiokinetic Wwise
Первый шаг, он трудный самый: Создаём в директории вашей игры папку Sounds, в неё мы героически пихнём две новых папочки - wwise_project и sounds. Запускаем Wwise, подготавливаем аудиозаписи к импорту.
Примечание: CryENGINE работает только со звуками 16 бит, сэмпл рейтом в 48 килоГерц (а так же 41.1), моно или стерео, с расширением .ogg или .wav СУПЕРПРИМЕЧАНИЕ: Не менять расширение. Только компиляция. Я использовал Sony Sound Forge 8.0 для перегонки из .mp3 в .wav
Шаг второй, уже попроще: Создаём проект. О том, как всё делается, скажет Ctrl+C / Ctrl+V из моего заранее подготовленного документика...
Создание собственных звуков через Audiokinetic Wwise 1. Audio Translation Layer и Wwise Расположение проекта и саундбанка при использовании Wwise: При использовании инструмента важно соблюдать правильную локацию саундбанка и проекта. В нашем случае: Саундбанк - GameSDK(Gamedata и т.д.)/Sounds/wwise Проект - GameSDK(Gamedata и т.д.)/Sounds/wwise_project ВАЖНО: Папка создаётся отдельно под первый проект, затем проект сохраняется туда! Все последующие проекты для CRYENGINE должны сохраняться в эту же папку. Не меняйте путь к этим файлам, т.к. краевский Audio Controls Editor попросту не увидит ваших трудов. Проверка подходящей версии Wwise Чтобы проверить, правильную ли версию Wwise вы используете, запустите любой уровень и пропишите консольную команду s_DrawAudioDebug. Версия должна совпадать (Ни более новые, ни менее старые не подойдут. Это будет просто лажа.) Лично у меня на 3.8.6 билд 49 используется версия Wwise 2015.1.4 (Build 5497). Загрузить нужную версию можно тут: Audiokinetic | Download Wwise. Софт бесплатный для некоммерческих проектов, но количество аудиофайлов в вашем проекте (всего) не должно превышать 200 элементов, или при генерации саундбанка вас пошлют в известное место за лицензией. Лично я посмотрел, сколько они стоят. Ни одному инди-коммерческому проекту столько не выплатить, да ещё и в месяц или в год (постоянной лицензии нет) 2. Создаём свой собственный саундбанк. Для этого нам нужно: создать собственный проект, затем импортировать звук, создать ивенты и загрузить их в саундбанк, после чего сгенерировать. Поехали. Chapter 1. Создаём проект. Можете его обозвать, как вам угодно, но сохранить вы его должны в папке GameSDK(Gamedata и т.д.)/Sounds, иначе АСВ его не прочитает. Chapter 2. Импорт аудиофайлов в проект. Открываем шторку Файл, затем Импорт, выбираем нужные файлы и вуаля. ВАЖНО, ЧОРТ ПОБЕРИ: Все аудиофайлы должны быть в формате .wav или .mid . Менять расширение не советую - выдаст ошибку при импорте, мол, файл повреждён, или вы программу за лоха держите. Chapter 3. Создаём ивенты. Открываем юнит в Actor-Mixer Hierarchy/Default Work Unit/Ваш_звук. Вы можете поднастроить и послушать ваш звук с помощью панельки, которая находится справа от трея проекта. Итак, выбираем звук, щелчок правой кнопки мыши (ПКМ), Create Event (Или как-то так, ориентируйтесь по слову Event). В открывшемся окне сделайте сначала ивент с функцией Play, затем Stop. Для каждого. По два ивента. Запомни. Иначе в движке не запустится звук. Переключаемся на Soundbanks в Project Explorer. Вверху будет кнопка, с буквой S на фоне какой-то интегральной микросхемы. Не суть. Жмём. Обзываем. Даблклик - переносим из свитка Triggers наши триггеры в открывшееся окно саундбанка. Выделяем после всего этого наш банк, жмём Alt+F7 для генерации. Лучший вариант - задать все платформы. По окончанию сохраняем проект и выходим из Wwise.
Втыкиваем нашу дичь в АСЕ (просто гифка):
Click here for further information
По окончании действия сохраняем работу в АСЕ.
Шаг третий: юзаем SDLMixer.
Здесь всё предельно просто - создаём на уровне слой по имени Audio, переносим на него AudioTriggerSpot, или же то, что нужно вам. Открываем консоль (View - Show Console). Вбиваем комманд s_AudioSystemImplementationName = CryAudioImplSDLMixer. Теперь вы неотразимы, и можете запускать АСЕ ещё раз. Всё, что нужно сделать - это найти наши триггеры, щёлкнуть и сделать то, что показано на следующей гифке:
Click here for further information
Опять таки не забываем сохраниться. Конфигурируем наш саунд таким макаром:
1. Volume. Лучший вариант: 0 (макс), -14 дефолт. 2. Loop. Закольцовка - Infinite или кол-во за одно проигрывание в параметре Count. 3. Distance Max/Min. По вкусу. 4. Action. Оставьте, как есть.
Напоследок: настройки аудио в триггере открываются с помощью щелчка по аудио
Click here for further information
Единственный возможный минус данной методики - пропажа звука после перезапуска редактора. Лечится это очень просто - за аудиосистему по умолчанию должен выступать SDLMixer, это, к тому же, и самый удобный вариант.
На этом всё.
K3S-Res aka K4 или Грегорьян Кибра.
This post has been edited 5 times, last edit by "K3S-Res" (Aug 17th 2016, 6:41pm) with the following reason: Исправление замеченных ошибок.
Хех, а я сам докапывался. (Хотя по поводу wwise на форуме есть уроки уже, но тебе тоже респект за работу). + поправочка: CE работает и с частотой 41.1 кГц
Пока был fmod, была возможность воспроизведения mp3, это правда. Я просил на официальном сайте вернуть такое воспроизведение не однократно, но крайтэк ничего не сделал для этого.
Пока был fmod, была возможность воспроизведения mp3, это правда. Я просил на официальном сайте вернуть такое воспроизведение не однократно, но крайтэк ничего не сделал для этого.
Вот поэтому я и просрал свои библиотеки .mp3 звуков
Привет всем! Ну вот опять все мы тута собрались. Хоть нас и не много, но мы наверное самые стойкие...
Эта тема хорошая! Надо больше уроков закидывать.
К стати, дайте ссылки на SDL и Wise. А то я что то хотел этот Wise скачать, а там денег кучу просят.. печалька..
Ну вот не могу я жить без игростроя, а комп я обновил, ну или типа того...