Система озвучки игр (с плагином для Unity)
Наша маленькая команда сделала игру AirHockeyVR под Oculus Quest, в ней есть обучение на английском языке, которое записал ютюбер, который сначала записал видео про игру -> мне понравился его голос -> я попросил его сделать озвучку -> он согласился и записал.
Дальше я начал смотреть, как Unity предполагает программировать локализацию звуков - и хоть решение есть, оно не удобное и не подразумевает заливку новых звуков по мере их поступления без ребилда игры. Поэтому я написал свое решение (аналогично тому решению, где вы можете хранить переводы в гугл таблицах, только тут не тексты, а звуки).
И теперь я представляю это решение вам :)
Вот что вам понадобится:
https://audio.sa-wd.ru/ - тут заливать звуки
https://audio.sa-wd.ru/storage/package/SAWDAudioManager.unit... - плагин для Unity
Общая идея очень простая: у вас уже есть игра, в ней уже есть звуки, а значит много переделывать вам не хочется.
И не надо.
Что бы звуки грузились в игру, вы просто подписываетесь на делегат в SAWDAudioManager когда вам нужно получить звуки (делегат возвращает наборы звуков по тэгу), и отписываетесь когда они вам больше не нужны.
Для случаев, когда у вас один AudioSource с одним звуком - докидываете хелпер, в котором указываете тэг [и сабтэг, опционально] звука.
Предполагается так: только тег - это набор звуков, один созданный звук на сайте может быть перезалит набором звуков (для примера - это звук удара шайбы). Если есть сабтэг - значит это один звук, который заменяется один на один (для примера - это фраза "добро пожаловать!").
Так же потребуется капля работы с дизайном что бы можно было выбирать необходимые звуковые пакеты. Пример сцены есть в unitypackage. Можно не использовать, а просто вызвать загрузку других пакетов любым удобным вам способом.
Само собой, вы можете подписываться на теги только там, где хотите иметь возможность менять звук на другой.
В AirHockeyVR я подписался на изменения звуков обучения, написал в нашем дискорде, и нашелся француз, который записал для нас французский перевод - так что идея вполне работает :)
Так же я попросил своего друга записать перевод на русский язык.
И вообще любой человек или группа людей может записать перевод для вашей игры - и сразу же добавить его в релизную версию (разработчик всё еще должен будет заапрувить этот аудиопакет, иначе он не появится в игре).
Проект в альфа-релизе, но уже пора пробовать - я морально готов к допилам на основе комментариев :)

Лига Разработчиков Видеоигр
9.8K постов23.3K подписчиков
Правила сообщества
ОБЩИЕ ПРАВИЛА:
- Уважайте чужой труд и используйте конструктивную критику
- Не занимайтесь саморекламой, пишите качественные и интересные посты
- Никакой политики
СТОИТ ПУБЛИКОВАТЬ:
- Посты о Вашей игре с историей её разработки и описанием полученного опыта
- Обучающие материалы, туториалы
- Интервью с опытными разработчиками
- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе
НЕ СТОИТ ПУБЛИКОВАТЬ:
- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры
- Посты, единственная цель которых - набор команды для разработки игры
- Посты, не относящиеся к тематике сообщества
Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.
ЗАПРЕЩЕНО:
- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции
- Выдавать чужой труд за свой
Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.
О РАЗМЕЩЕНИИ ССЫЛОК:
Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:
- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества
- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз
- Cсылка размещается в формате: "Страница игры в Steam: URL"