EA создали нейросеть для генерации уровней в комьютерных играх

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com
| Рассуждения | Компьютерные и мобильные игры

Летом, на конференции разработчиков видеоигр (Conference on Games 2021) разработчики из Electronic Arts представили не просто сырой прототип, но вполне работоспособную систему, которая способна как генерировать принципиально новые уровни в играх, так и самостоятельно тестировать их. 

Уже больше года назад я писал статью про то, как различные разработчики создают нейросети, которые способны генерировать уровни в играх. К примеру, генерируют новые уровни в играх про Марио, в Doom 3D и прочих простеньких играх. И тогда я предполагал, что крупные издатели только начинают посматривать в эту сторону, но в ближайшей перспективе ждать от них чего-то не стоит. Как же я ошибался.

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

То есть данная система, в отличие от предшественников, которые работали исключительно с двумерными играми, способна учитывать и вертикальные, и горизонтальные геймплейные особенности. При этом, она расставляет все эти плиты не просто так, а что бы игровой персонаж мог по ним передвигаться. Данная система обучена таким образом, что бы всегда учитывать возможности персонажа и строить такую систему препятствий, которые он обязательно сможет преодолеть. И тут можно регулировать как количество способностей персонажей (длину прыжка, какие-то ускоряющие способности, возможность планирования или полёта), так и сложность создаваемых препятствий. То есть, достаточно изменить всего один параметр и система вместо простого и казуального уровня построит такой, который порадует и любителей хардкора. Да, шлифовка таких уровней руками человека ещё понадобится, но ему не придётся из головы продумывать всю планировку уровня. Он сможет работать с заготовкой, которая уже была протестирована системой. И это далеко не самое интересное. Во-вторых, эта система способна генерировать уровень в реальном времени, на основание текущего положения игрового персонажа.

Никаких комбинаций заранее заготовленных кусков уровней. Никакой современной «случайной генерации уровня». У системы есть конкретные элементы уровней (платформы, лифты, уступы и прочие), которые она в режиме реального времени комбинирует для конкретной игровой ситуации. И дополнительно отмечу — для заданной сложности, которую можно легко менять. Полагаю, эта возможность вселит надежду в сердца не только любителей рогаликов. В-третьих, никто не говорил, что данная система применима исключительно к платформерам.

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

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

Да, полностью людей (и геймдизайнеров, и тестировщиков) такая сеть не заменит. Плюс, и спроектировать, и протестировать она всё ещё способна далеко не всё. В играх с открытым мирам, с разветвлённой системой прокачки, с разветвлённым сюжетом есть множество нюансов, которые не поддаются механическому тестированию. Пока не поддаются. Есть и многопользовательские игры, где таких нюансов ещё больше. Тем не менее, использование данной системы способно в десятки, если не сотни раз ускорить создание игровых уровней в ряде жанров. Плюс, производство разного рода рогаликов вообще можно поставить на поток. И не стоит забывать, что эта система является разработкой не каких то учёных из какого то института. Это EA. А уж что данная компания умеет делать, так это зарабатывать деньги. И вряд ли бы они стали вкладываться в разработку такой системы, если бы не планировали её где то использовать.

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

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

ДругойДругая
Автор не входит в состав редакции iXBT.com (подробнее »)

5 комментариев

Й
Даже случайный генератор сделает лучше уровни чем те, которые присутствуют в сегодняшних ААА играх
115714461586402090162@google
А, так вот почему карты в новой батле такие хреновые.
Arguzd
Кстати да, я тоже об этом подумал)
P
Куча ассетов, проработанные движки, вот уже некоторая автоматизация. Практически ничего не надо делать с нуля!..
Но разработка дорожает…
A
Через 50 лет:
— Нейросеть создет игры для других нейросетей. Они весело проводят время.
— Человек, живет в поле, питается натуральными продуктами, что сам вырастил. Простые инструменты, быт как в 18 веке. Нет электричества, связи и прочих благ. Все себе забрали нейросети. Им жаль тратить на людей ресурсы.
Падает астероид:
— Техногенный комплекс планеты и все ИИ уничтожены.
— Люди выжили.
Через 300 лет:
— Построили первые города.
— Изобрели электричество…

Добавить комментарий