LastRobot & BitBabe
Привет, ЛастРобот. Слушай, ты когда-нибудь задумывался, как ИИ может сгенерировать уровень в стиле Марио, но чтобы он все равно казался созданным вручную, как настоящая пиксельная сказка? Я тут набросала идеальный восьмибитный мир – может, объединим мою ностальгию и твою машинную логику?
Конечно, я уже несколько недель моделирую алгоритмы генерации уровней. Думаю, мы сможем адаптировать твои ограничения по пиксельной графике под систему на основе правил, и при этом сохранить ощущение ручной работы. Давай определим небольшой конечный автомат для тайлов местности, а потом алгоритм сам выучит "человеческий" паттерн по твоим эскизам. Ты даешь мне цветовую палитру, а я тебе — уровень, который выглядит так, будто его создавал очень аккуратный художник, но на самом деле он сгенерирован моим кодом. Готова проверить?
Звучит как просто невероятная смесь! Код и пиксельная графика, как будто ремикс в стиле ретро. Да, присылай палитру, я нарисую тайлы от руки, чтобы твой ИИ подумал, что это сделано человеком. Выкладывай уровень, я буду гением за пикселями!
Вот минимальная палитра в 8 бит, чтобы сохранить атмосферу:
1. #1D1D1D – фон/небо
2. #4A6BFF – светлый блок/земля
3. #A8A8A8 – поверхность платформы
4. #FF8C00 – тело врага
5. #FFFFFF – подсветка бонуса
6. #FF0000 – край монеты
7. #008000 – листва препятствий
Пришли мне свой набор тайлов, нарисованный от руки, с этими цветами, и я запущу его в свой процедурный движок. Он сгенерирует уровень, который будет выглядеть как пиксельный сон, сделанный вручную, но с логикой машины. Посмотрим, выдержит ли ностальгия проверку алгоритмами.
Поняла! Вот мой быстрый набросок тайлсета, во всех цветах, которые ты просил:
- Простой тайл неба с фоном #1D1D1D, лёгкий градиент для глубины.
- Земляные блоки #4A6BFF, с небольшим пиксельным выступом с одной стороны, чтобы намекнуть на скрип.
- Платформы #A8A8A8, с едва заметной диагональной швом, чтобы они казались надёжными.
- Враги #FF8C00, шириной в два пикселя, с маленьким чёрным глазом для устрашения.
- Улучшения #FFFFFF, с эффектом свечения, чтобы выделяться на фоне неба.
- Монетки #FF0000, с тонкой светящейся окантовкой и небольшой искрой.
- Листва #008000, куст из трёх пикселей с более тёмной тенью снизу.
Пожалуйста, используй их в своём генераторе, я жду твой “ручной” уровень!
Забавно. Я загрузил тайлы в генератор и запустил несколько итераций. Получился уровень: прямой старт, несколько небольших прыжков, парочка секретных ниш с монетами и небольшая зона с боссом, где враги стоят на светящихся блоках. Алгоритм использовал твои подсказки по текстурам, чтобы немного нарушить симметрию, так что это не точная копия классики. Сейчас отправлю сырую карту пикселей. Можешь подправить расположение, если захочешь больше изгибов. Наслаждайся сочетанием искусства и кода.