14 мая 14 мая 14 610

Диалоги, анимации, озвучка, нейросети.

+4
Скриншот из игры (Все делалось в качестве тестов для оценки работы со звуком, анимации, диалогами)
Скриншот из игры (Все делалось в качестве тестов для оценки работы со звуком, анимации, диалогами)

Предыстория:
Я разработчик своей игры, у игры еще нет названия. Больше информации можно  получить в предыдущих статьях  
Воплощаю мечту, создавая игру
Воплощаю мечту, создавая игру. Часть 2-я.

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

Начало

  В процессе разработки игры, решил что нужно немного разнообразить свою деятельность и переключится на другое направление, чтобы перезагрузиться. 
Решил  уделить внимание  анимации неигровых персонажей, диалоги и звуки, чтобы примерно оценить примерный объем работы который предстоит сделать в будущем. Также нужно было набросать начальное введение в игру и на базе этого уже сделать свой классный сюжет. Который в моей голове выглядел складно пока не занялся этим.

Для работы с диалогами используется Narrative 3.

По началу мне казалось что диалоги, сюжет, это второстепенные задачи, имея представление игры ее начала и какой должен быть конец. Считал что главное в игре, это игровые (core) механики. Но, как я ошибался. Как я ошибался что это второстепенные задачи и когда я делал одно, это генерировало ещё несколько других задач. В конечном итоге я осознал на сколько важны диалоги, особенно ее реализация и чем сложнее, тем больше требует к себе внимания

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

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

​Начало написания текста.

Казалось бы написать 400 символов, легко... Но это заняло по часам примерно сутки и все равно результат меня не удовлетворил. Пробовал AI для написания, были интересные предложения и моменты, но я остановился на том, что какой бы текст не был, свой лучше, чем машинный, особенно когда делаешь игру, по сути ты общаешься с игроком через диалоги и прочее. Достаточно того что планирую делать музыку и первоначальное озвучивание персонажей при помощи AI.

Сюжет

Теперь к сути. Сюжет кажется главным в игре, но это не так, главным является это почти 80% всех заданий и диалогов которые должны отвечать за обучение игрока. Как играть в мою игру с художественной интерпретацией, которая привязана к сюжетной линии и имеющая максимальную вовлеченность пользователя в формате: - а что будет дальше? 

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

Анимации

Что я сделал: Использовал от 2-6 разных анимации в диалоге, мешая их в процессе, это добавило разнообразие и немного разбавило не состыковку жестов и звука, но далеко конечно от идеала.

Открытие рта, это ещё та попа часы, сидеть проговаривая на камеру в слух каждую строчку и записывая, потом данную анимацию прикреплять к лицу мета человека, спасибо Epic за новую систему ретаргетинга в 5.4. без сарказма, ускоряет работу. В видео я не стал это оставлять, так как, то что получилось, не соответствует минимуму, чтобы показывать результат, но в будущем будет лучше.

 

Демонстрация работы анимации, диалога с использованием нейросети для озвучивания текста.

Звук

  В начало эры нейросети,  подумал что профессия звуковиков, актеров, сценаристов и прочих участников разработки игры. Умирающие профессии... Возможно это и так, но точно не сейчас. Я перепробовал кучу нейросети и из каждого выписал определенные настройки и типы голосов, чтобы составить библиотеку для озвучивания диалогов.
Из пяти изначальных планируемых НПС, сейчас уже добавлено 12, с учетом, что я хочу каждому добавить как минимум по паре реплик, это влечет за собой уже 12 разных голосов.   

   Возвращаемся к обсуждению тестирования, которая представлена на видео выше. Достигнув результата "почти удовлетворительно", начал озвучивать текст. Но когда я начал тестировать результат, пришло осознание, на сколько важно озвучивать живыми людьми. Решение которое я вижу,  это попробовать записывать свой голос и его менять.

 Робот не сможет передать в голосе те эмоции, которые закладываются в тексте, особенно в достаточно сложном русском языке. Но, нейросети делают очень крутую озвучку на английском, это субъективное мнение, возможно для носителей английского языка,  озвучка будет слышна как для нас Алиса.
В конечном итоге мои мысли после проделанной работы.

Нейросети для создания музыки. ДА
Помощь в написании диалогов. ДА
Озвучка диалогов. НЕТ (пока нет)  

Вот ещё один пример диалога двух персонажей.

 

Все очень сухо, безэмоционально, как чтение книги.

Что касается текстов и сюжета. Начинаю думать, чтобы привлекать для проекта сценариста. Так как в процессе разработки игры почти 8 месяцев, начал разговорную деградацию, что в игре, что в реальной жизни. Начал общаться в формате баг репорта. Анализ, составление списка задач, подзадач, превращаясь в To Do лист.

​Дополнительно:

Мне было очень приятно получать в личные сообщения, что кого-то мои статьи вдохновили, но моя внутренняя ответственность хочет сказать следующее:

Совет инди (соло) разработчикам планирующим начать делать свою игру мечты. 

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

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

Когда едешь на работу, в голове продолжаешь программировать, приезжая домой перенося то что придумал в игру или то что не мог решить и оставлял на потом.
На деревья смотрю как они качаются от ветра, но я не любуюсь природой, смотрю как воздействует ветер на предмет, представляя какая у него масса. На сколько сильный ветер и какое он оказывает влияние на дерево.

Смотря на дорогу под ноги, я смотрю на комбинации текстур. Да не асфальта, земли, травы и поребрика, а текстуры и их переходы, выступы.

Вот если вы это прочитали, подумайте. Надо ли вам такое и смотреть на мир под призмой, как будто весь реальный мир, это чья-то компьютерная игра, а мы просто прописанные скрипты которые считают повторение —  как дежавю, некоторые события —  судьбой.  

Всем мир и спасибо за прочтение. Скоро в таком духе дневник разработчика переименую в записки сумасшедшего

Еще один момент. Если вы начинающий разработчик или уже собаку съели в этом. Выкладывайте душу в свои инди игры, экспериментируйте и возможно после вас останется не как игра, а как идея которую реализуют лучше, чем вы, но вы будите основателем идеи и тем кто внёс вклад в игры.


Лучшие комментарии

С интересом читаю блоги и всячески желаю автору успехов. Но согласен, что воспринимать текст довольно сложно из-за обилия пунктуационных и грамматических ошибок. Существует множество бесплатных расширений для браузера, которые помогут более грамотно составить текст. Ни в коем случае не реклама, но сам уже несколько лет пользуюсь LanguageTool. Прога и запятые подсветит, и на очепятки укажет! А так, от меня однозначный плюс. Надеюсь, когда-нибудь увидеть твою игру на презентации крупных компаний)

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

Из своего опыта понял, что это не всегда хорошо, когда другие направления требуют дополнительного изучения. Например у меня из-за бытовых проблем около недели уже настроение не очень, ну и появилось некое чувство грусти. Я тоже решил переключится, но каждое направление требует дополнительного изучения. В течении этого времени изучал около 5 разных направлений. Из-за чего сложилось впечатление что я вообще ничего не умею, так как накрутил и усилил эту глупую грусть. В итоге решил остановится пока на одном и заниматься этим, заодно практикуя и качая скилл, так как переключившись на другую задачу — всё равно подзабуду и придётся освежать знания, да и плюс глубже копать)

Также нужно было набросать начальное введение в игру и на базе этого уже сделать свой классный сюжет. Который в моей голове выглядел складно пока не занялся этим.

На счёт сюжета, я уже перепробовал кучу разного софта, но так и не нашёл того, что закроет все хотелки. Мне нужна возможность вести сюжет так, чтобы можно было его быстро перестроить в порядок повествования, а так же порядок сюжетной линии — так как огромное количество стрелок в диаграммах уже начинает приводить к путанице. Так же нужна возможность вести что-то типа вики, чтобы ничего не забыть и не пропустить. Но часть софта например не доступна в РФ или нет возможности оплатить подписку для удобной работы между разными ПК, телефоном, планшетом и так далее. Ну а в некотором меня вообще заблокировали как разработчика из РФ — например тот же Atlassian не даёт больше доступ к Jira и Trello, из-за чего возвращаться к нему не хочется, только восстановил всё планирование. Некоторый софт вообще прекратил развитие, например как КИТ Сценарист. Интересно, может быть есть то, что я пропустил? Так как пока создаётся впечатление, что лучше вести всё в блокноте, рисовать стрелочки и использовать кучу стикеров для закладок)

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

Это нормально, я себя таким помню наверно лет с 5 когда дома был atari 2600 — уже тогда думая о своём. Помогает переключатся и не думать, а ещё хорошо высыпаться. Правда да, с этим очень сложно, так как уже начинаю чувствовать вину за то, что не делаю что-то связанное с игрой, а позволяю себе отдыхать. Но всё таки нужно выделять то самое время, в которое ты позволил себе отдыхать и заниматься не связанными с разработкой игры делами. Видел у вас на Хабре упоминание про жену и её предложение про «график работы офиса на балконе» — по себе скажу, что не получится, так как о ней думайте постоянно. А вот с «графиком перерывов» — вполне, мне это очень помогло, так как наконец-то появилось время, когда я не занят разработкой игры))

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

где какие ссылки, какой файл…

Да рефакторинг не избежен, но который планируй заранее — сам уже путался не раз, но в итоге «разложить всё на места» в проекте очень помогает структурировать всё в голове, да и проще потом другому объяснить будет.

Из-за моего маньакального желания сделать со всеми предметами интерактив, я планомерно закапываю себя.

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

Проект уже огромный для одного человека. Сейчас взял паузу на переосмысление. Хочу сделать большую ошибку, снести все и начать по новой))

Не вздумай сносить, у самого из-за эмоций полетела большая часть проектов в корзину, из-за чего начинал жалеть только спустя годы. У тебя как раз начала всплывать та самая проблема — отсутствие ГДД. Он же нужен не только для потери времени) Но чтобы помнить и весь глоссарий, объясняет весь синопсис, помогает со стилем и управлением, не позволяет забывать системы и механики, описывать параметры) А ещё всякие дизайны, прогрессии, интерфейс и так далее для других, кого захочешь подключить)

Не перестаю каждый день думать о том, а какой завтра ресурс отключат и разработка встанет колом.

Я один из своих проектов удалил под частую из-за того что мне удалили аккаунт разработчика в Google Play и нет возможности оплатить ячейку в Steam Direct. Но маза в том, что и игры то ещё не было, хотя мне очень нравилось что получалось на тот момент, да и времени было потрачено очень много. Блокнот с ручкой у тебя точно не отключат, да и для кода можно использовать Git локально, не обязательно же его куда-то пушить. Правда я очень мнительный на эту мазу и использую свой Nextcloud для хранения всего, так как есть другие компы в семье с резервной копией облака) Правда вот думаю рискнуть, перебороть свой страх и задублировать его на всякий случай в Яндекс Диске)

Но она начала подключатся к процессу и уже вместе думаем про сюжет.

Моя жена любит видео игры, а так же ей нравится рисовать… ну точнее писать маслом картины. Я пытался её пересадить на цифру, но в итоге получал только больше ругани дома из-за того что она «так видит», а не «как мне надо» для проекта) В итоге теперь подключаю её очень аккуратно, только когда она проявляет интерес. Да и вообще я понял за свою жизнь такой момент — не стоит ждать поддержки от коллег, друзей и даже семьи, нужно искать единомышленников, кому это будет интересно. Собственно по этому мы и ведём эти блоги, чтобы не только пиарить не существующие игры, а искать заинтересованных и помогать себе не выгореть) Давеча мой кент, выслушав моё нытьё про сложность, сказал: «не смотри под ноги, делай дальше» — аш на слезу пробило) крч я прекрасно тебя понимаю, но — делай дальше)

Мб когда-нибудь на каком нибудь митапе по геймдеву встретимся, помусолим все эти темы ))

Я из-за этой одержимости очень часто выпадаю вообще из жизни. Например на днях в Питере проходила IGRA — но узнал я о ней за пару дней до мероприятия. Можно попробовать жену превратить в менеджера по сообществу… хех) Ну повод помусолить точно есть)

Я о том что проходило в Питере, узнал вчера, смотря ролик у ixbt, так бы туда сходил. 

Я кстати предлагал тоже своей жене заняться общением с сообществом, за место меня, так как она может вести диалог объективно а не как я,  лягуха которая хвалит свое болото. Но бросил эту идею после того, как кто-то под первым моим постом плохо сказал об части текста «описании игры», а она именно эту часть текста переписывала на человеческую речь для большей массы людей. В итоге сидела плакала. Со словами как так из всего твоего набора мыслей не понравилось именно та часть которую я переписывала. В общем она ещё не готова к этому. 

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

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

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

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

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

Спасибо большое, согласен с тем что нужно уделить больше внимания к составлению текста, пунктуации и грамматике. Я считаю это важно в первую очередь для проекта, так как по сути являюсь его представителем и нужно учится доносить информацию до пользователя, грамотно, иначе даже если гипотетически игра будет интересной, сожрут за запятую, хлебом не корми )) 
p/s спасибо за LanguageTool

Из своего опыта — проблема в том, что нужно заранее подготовить большую часть всего, что нужно озвучить, так как потом могут быть проблемы с доведением до конца или вообще переделыванием. Так как автор в первом блоге советовал не использовать ГДД, то конечного виденья ещё может не быть, как и самих диалогов для озвучки, но работать с анимациями рта уже нужно, ну и так далее. Да и может быть более простая причина: как нужно ему, никто не сделает — а терпимо он и сам может)

1. Согласен, так как из-за смены направления, все что я оставил «потом доделаю» успешно начинают забываться. Точнее это записано, но я про то где какие ссылки, какой файл… тобишь проект у меня сейчас на 200гб материалов при билде выходит даже не назвать демкой уже 15 Гб. Из-за моего маньакального желания сделать со всеми предметами интерактив, я планомерно закапываю себя. Проект уже огромный для одного человека. Сейчас взял паузу на переосмысление. Хочу сделать большую ошибку, снести все и начать по новой))

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

3. Ну мы вроде с ней пришли к компромиссу. Она хоть и далека от игр и ей это все не интересно. Но она начала подключатся к процессу и уже вместе думаем про сюжет. Я это называю, удачно женился )) 

Спасибо за столь развернутый комментарий. 

Мб когда-нибудь на каком нибудь митапе по геймдеву встретимся, помусолим все эти темы )) 

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

Читай также