Эссе о разработке игр, мышлении и книгах

Используем DALL-E для геймдева

DALL-E: "Vrubel-style painting of an indie game developer working on her game, like The Demon Seated."

DALL-E: "Vrubel-style painting of an indie game developer working on her game, like The Demon Seated."

Получил доступ к DALL-E и попробовал применить его к чему-нибудь полезному — геймдеву. В конце-концов, к чему ещё прикручивать процедурную генерацию.

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

Осторожно, много трафика — DALL-E отдаёт png файлы размером 1-2 мегабайта. Я немного пожал их, но качество старался сохранить на максимуме, поэтому картинки всё-равно тяжёлые.

DALL-E

DALL-E - это SOTA нейронная сеть для генерации изображений.

Она может:

  1. Создать несколько изображений по текстовому описанию.
  2. Создать вариации конкретного изображения, из п.1
  3. Дополнить/изменить изображение из п.1. Пользователь стирает часть картинки, пишет новое описание и сеть заново заполняет убраные части.

Доступ дают всем, кто хочет, но есть задержка (дни/недели после регистрации). Изображения создаются за кредиты, которые можно докупать. Каждому пользователю даётся достаточно бесплатных кредитов, чтобы поэкспериментировать, плюс каждый месяц немного будут досыпать.

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

Есть цензура. Если захотите сгенерировать порнушку, увидите что-то вроде этого:

It looks like this request may not follow our content policy.
Further policy violations may lead to an automatic suspension of your account.

Цензура, конечно, тоже на каком-то ML построена, поэтому есть способы обходить :-) Одно из направлений атаки опишу в этом посте, но я им не злоупотреблял, поэтому не знаю на сколько оно будет эффективным.

Общие впечатления

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

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

Работает DALL-E не идеально — это не полноценная замена профессиональным художникам. Но это крутой способ быстро и дёшево получать изображения достаточного качества для многих задач.

Проблемы, которые я обнаружил:

  • Не умеет выполнять детальные запросы. Чем больше слов в описании, чем оно конкретнее, тем хуже будет результат.
  • Сильно тяготеет к мемичным оптимумам. Сеть училась на контенте из наших интернетов, который сильно перекошен в сторону популярных мемов. Чем ближе запрос к мемам, тем лучше будет результат. Чем дальше от популярной темы, тем хуже. Например, сеть на раз генерирует котиков, но эльдар или Слаанеш из W40K сходу получить сложнее.
  • Плохо справляется с мелкими деталями, частными случаями, etc.

DALL-E - это не волшебная палочка и, с большой вероятность, не станет ей в обозримом будущем.

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

Де-факто, это что-то вроде компаса для навигации в коллективном инфополе — океане идей, где острова — это мемы (устоявшиеся и возможные), а воды между ними — terra incognita. С помощью DALL-E мы можем целенаправленно исследовать этот океан в поисках новых мемом.

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

Поэтому предполагаю, что скоро начнут появляться надстройки над DALL-E, которые будут давать больше инструментов для точной навигации. Например:

  • Ввод текста заменят или дополнят кучей ползунков и флажков для более точного выбора направления. Самый простой вариант: выбор стиля картинки кликом по иконке с типичным для него изображением.
  • «Умная» автоматическая генерация бОльшего количества вариантов изображений с помощью автоматических преобразований оригинальной фразы.

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

Используем DALL-E для задач геймдева

Я пробовал несколько направлений использования, буду рассказывать о них по-порядку. То есть начну с самых наивных попыток :-)

В примерах картинок обычно будет 4 изначальных варианта плюс три детализации лучшей версии.

Скриншот игры по концепт-документу

Я люблю писать концепты игр, поэтому первое и самое наивное, что пришло мне в голову: а не нагенерить ли скриншотов гипотетических игр. Было бы круто концепты сопровождать сразу скринами.

Экспериментировал, конечно, на своих концептах.

Space Opera Engine

Screenshot of an indie game for PC: a simulator of the universe — multiplayer socio-political sandbox on the scale of Space Opera.

Stylistics is minimalist. Basic information is presented in text, pictograms, and icons. For images, low-detailed vector drawings are used.
Скриншот 1 инди игры Space Opera Engine созданный DALL-E Скриншот 2 инди игры Space Opera Engine созданный DALL-E Скриншот 3 инди игры Space Opera Engine созданный DALL-E Скриншот 4 инди игры Space Opera Engine созданный DALL-E Скриншот 5 инди игры Space Opera Engine созданный DALL-E Скриншот 6 инди игры Space Opera Engine созданный DALL-E Скриншот 7 инди игры Space Opera Engine созданный DALL-E

NoCraft

Indie game "NoCraft" — like StarCraft but without micromanagement. Less reflexes, more strategy. RTS with indirect control, mutations of units and their behaviour. The setting is space, captured by zergs. The graphics style is simplified, cartoonish, frivolous, and vector.
Скриншот 1 инди игры NoCraft созданный DALL-E Скриншот 2 инди игры NoCraft созданный DALL-E Скриншот 3 инди игры NoCraft созданный DALL-E Скриншот 4 инди игры NoCraft созданный DALL-E Скриншот 5 инди игры NoCraft созданный DALL-E Скриншот 6 инди игры NoCraft созданный DALL-E Скриншот 7 инди игры NoCraft созданный DALL-E Скриншот 8 инди игры NoCraft созданный DALL-E Скриншот 9 инди игры NoCraft созданный DALL-E Скриншот 10 инди игры NoCraft созданный DALL-E

Как можно видеть, DALL-E хорошо схватил тему инди игр и космоса, но в остальном получился откровенный трешак. Поэтому я отложил концепты игр и вспомнил об идее Write Your Own Adventure.

Детальное описание сцены

Тексты, которые может воспринимать DALL-E сильно ограничены по размеру. И далее вы увидите, что, чем меньше размер, тем лучше результат. В нюансы сеть пока не умеет.

Concept art of an old dwarf-necromancer who stands on the top of a hill. The dwarf has a magically enchanted leg prosthesis, one eye is replaced with a glowing ruby. The hill is surrounded by the inquisition. There are spirits flying in the sky.
Пример 1 концепт арта от DALL-E Пример 2 концепт арта от DALL-E Пример 3 концепт арта от DALL-E Пример 4 концепт арта от DALL-E Пример 5 концепт арта от DALL-E Пример 6 концепт арта от DALL-E Пример 7 концепт арта от DALL-E
Concept art of an old dwarf-necromancer who stands on the top of a hill. The dwarf has a magically enchanted leg prosthesis, one eye is replaced with a glowing ruby.
Пример 1 концепт арта от DALL-E Пример 2 концепт арта от DALL-E Пример 3 концепт арта от DALL-E Пример 4 концепт арта от DALL-E Пример 5 концепт арта от DALL-E Пример 6 концепт арта от DALL-E Пример 7 концепт арта от DALL-E

Обратите внимание, что персонаж не имеет протеза ноги, а рубиновый глаз нашёл отражение только в цветовой гамме.

Концепт-арт

Если убрать уточнения, то концепт-арт какой-то получается.

Concept art of an old dwarf-necromancer who stands on the top of a hill.
Пример 1 концепт арта от DALL-E Пример 2 концепт арта от DALL-E Пример 3 концепт арта от DALL-E Пример 4 концепт арта от DALL-E Пример 5 концепт арта от DALL-E Пример 6 концепт арта от DALL-E Пример 7 концепт арта от DALL-E
Digital art of an old dwarf-necromancer who stands on the top of a hill.
Пример 1 концепт арта от DALL-E Пример 2 концепт арта от DALL-E Пример 3 концепт арта от DALL-E Пример 4 концепт арта от DALL-E
Scary old dwarf-necromancer who stands on the top of a hill.
Пример 1 концепт арта от DALL-E Пример 2 концепт арта от DALL-E Пример 3 концепт арта от DALL-E Пример 4 концепт арта от DALL-E
Scary old dwarf-necromancer fighting inquisition
Пример 1 концепт арта от DALL-E Пример 2 концепт арта от DALL-E Пример 3 концепт арта от DALL-E Пример 4 концепт арта от DALL-E

Как видите, самое короткое описание дало самый лучший результат. Но всё равно не точный — битвой с инквизицией и не пахнет.

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

Низкобюджетный pixel art

Тогда давайте посмотрим на самую дешманскую графику, которую мы можем получить.

Pixel art image of an scary old dwarf-necromancer fighting inquisition
Пример 1 пиксель арта от DALL-E Пример 2 пиксель арта от DALL-E Пример 3 пиксель арта от DALL-E Пример 4 пиксель арта от DALL-E

Ну, вы сами всё видите. Готовые спрайты для рогалика без анимации. Сколько их можно нагенерить? Миллионы.

High-resolution pixel art image of an scary old dwarf-necromancer fighting inquisition
Пример 1 пиксель арта от DALL-E Пример 2 пиксель арта от DALL-E Пример 3 пиксель арта от DALL-E Пример 4 пиксель арта от DALL-E

Можно даже с детализацией!

А если про космос? И сразу sprite sheet.

Pixel art sprite sheet with monsters for a roguelike in cosmos
Пример 1 pixel art sprite sheet от DALL-E Пример 2 pixel art sprite sheet от DALL-E Пример 3 pixel art sprite sheet от DALL-E Пример 4 pixel art sprite sheet от DALL-E Пример 5 pixel art sprite sheet от DALL-E Пример 6 pixel art sprite sheet от DALL-E Пример 7 pixel art sprite sheet от DALL-E Пример 8 pixel art sprite sheet от DALL-E Пример 9 pixel art sprite sheet от DALL-E Пример 10 pixel art sprite sheet от DALL-E

Sprite sheets пока сложно делать, а если по отдельности?

Pixel art sprite of a monster from outer space for a roguelike game
Пример 1 pixel art спрайта монстра из космоса от DALL-E Пример 2 pixel art спрайта монстра из космоса от DALL-E Пример 3 pixel art спрайта монстра из космоса от DALL-E Пример 4 pixel art спрайта монстра из космоса от DALL-E

Графика посложнее тоже получается, но это уже ближе к концепт-арту.

2D image of a monster from outer space for a PC game
Пример 1 2D изображения монстра из космоса от DALL-E Пример 2 2D изображения монстра из космоса от DALL-E Пример 3 2D изображения монстра из космоса от DALL-E Пример 4 2D изображения монстра из космоса от DALL-E

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

More womanly image
Пример 1 более женственного изображения монстра из космоса от DALL-E Пример 2 более женственного изображения монстра из космоса от DALL-E Пример 3 более женственного изображения монстра из космоса от DALL-E Пример 4 более женственного изображения монстра из космоса от DALL-E

Если попросить нарисовать профессиональнее, DALL-E нарисует.

Professional 2D image of a monster from outer space for a PC game
Пример 1 профессионального 2D изображения монстра из космоса от DALL-E Пример 2 профессионального 2D изображения монстра из космоса от DALL-E Пример 3 профессионального 2D изображения монстра из космоса от DALL-E

Тематический pixel art тоже получается, если тема известная.

Pixel art image of star trek crew
Пример 1 пиксель арта команды Star Trek от DALL-E Пример 2 пиксель арта команды Star Trek от DALL-E Пример 3 пиксель арта команды Star Trek от DALL-E Пример 4 пиксель арта команды Star Trek от DALL-E

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

Tiled pixel art map of fantasy kingdom
Пример 1 пиксель арта карты фэнтезийного королевства от DALL-E Пример 2 пиксель арта карты фэнтезийного королевства от DALL-E Пример 3 пиксель арта карты фэнтезийного королевства от DALL-E Пример 4 пиксель арта карты фэнтезийного королевства от DALL-E

DALL-E почти умеет делать покадровую анимацию. Кадры умеет, анимацию пока нет :-)

Pixel art sprite sheet with an animation of running warrior
Пример 1 пиксель арта спрайта бегущего воина от DALL-E Пример 2 пиксель арта спрайта бегущего воина от DALL-E Пример 3 пиксель арта спрайта бегущего воина от DALL-E

Прочие интересные штуки

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

Zerg queen in Japanese school uniform
Пример неудачного изображения от DALL-E для очень частного случая

Но некоторые страннае запросы отрисовывает довольно интересно. Например, для трёх запросов

1. epic battle diorama of MMORPG game
2. realistic epic battle diorama of MMORPG game
3. epic battle diorama of pixel art MMORPG game
Пример 1 эпической битвы в диораме от DALL-E Пример 2 эпической битвы в диораме от DALL-E Пример 3 эпической битвы в диораме от DALL-E Пример 4 эпической битвы в диораме от DALL-E Пример 5 эпической битвы в диораме от DALL-E Пример 6 эпической битвы в диораме от DALL-E Пример 7 эпической битвы в диораме от DALL-E Пример 8 эпической битвы в диораме от DALL-E Пример 9 эпической битвы в диораме от DALL-E Пример 10 эпической битвы в диораме от DALL-E Пример 11 эпической битвы в диораме от DALL-E Пример 12 эпической битвы в диораме от DALL-E
Most beautiful image of a divine steampunk dwarf hamster.
Пример 1 красивого изображения стимпанк хомяка от DALL-E Пример 2 красивого изображения стимпанк хомяка от DALL-E Пример 3 красивого изображения стимпанк хомяка от DALL-E Пример 4 красивого изображения стимпанк хомяка от DALL-E
1. Vrubel-style painting of an indie game developer working on her game.
2. Vrubel-style painting of an indie game developer working on her game, like The Demon Seated.
3. Vrubel-style painting of an indie game developer working on his game, like The Demon Seated.
4. Vrubel-style painting of an indie game developer working on his game
Пример 1 картины в стиле Врубеля от DALL-E Пример 2 картины в стиле Врубеля от DALL-E Пример 3 картины в стиле Врубеля от DALL-E Пример 4 картины в стиле Врубеля от DALL-E Пример 5 картины в стиле Врубеля от DALL-E Пример 6 картины в стиле Врубеля от DALL-E Пример 7 картины в стиле Врубеля от DALL-E Пример 8 картины в стиле Врубеля от DALL-E Пример 9 картины в стиле Врубеля от DALL-E Пример 10 картины в стиле Врубеля от DALL-E Пример 11 картины в стиле Врубеля от DALL-E Пример 12 картины в стиле Врубеля от DALL-E Пример 13 картины в стиле Врубеля от DALL-E Пример 14 картины в стиле Врубеля от DALL-E Пример 15 картины в стиле Врубеля от DALL-E Пример 16 картины в стиле Врубеля от DALL-E

Выводы

В общем-то по примерам всё видно. Уже сейчас DALLE-E это:

  • Быстрые дешёвые наброски концепт-арта.
  • Быстрый дешёвый пиксель-арт.
  • Быстрые уникальные картинки для блогов.
  • Инструмент навигации в пространстве мемов.

Что стоит ждать от следующих версий:

  • Анимации.
  • Более точного исполнения запросов.
  • Поддержания концептуальной и стилистической целостности между множеством изображений.
  • Итеративного конструктора сцен, в стиле github copilot.