Генератор пиксельных персонажей Universal LPC — как собрать спрайтшит для 2D-игры за пару минут

03 Aug, 2026
1,543
🔱 546
👥 39

Рисовать спрайты для пиксельной RPG — задача долгая и рутинная. Когда вам нужны десятки разных персонажей с анимациями ходьбы, замаха мечом, выстрела из лука и падения, объём работы разрастается мгновенно. Ещё сложнее сделать так, чтобы вся одежда, причёски и броня правильно накладывались друг на друга во всех кадрах.

В 2012 году сообщество OpenGameArt вместе с Creative Commons и Mozilla запустило конкурс Liberated Pixel Cup. Цель была простой: создать единый открытый графический стиль для 2D-игр. Из этого состязания вырос проект Universal LPC Spritesheet Character Generator. Это веб-приложение и набор совместимых между собой спрайтов, из которых можно конструировать готовых героев.

Как устроен генератор

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

Пример сгенерированных спрайтов

У этого подхода два главных плюса:

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

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

Лицензии и юридические нюансы

Разные авторы создавали ассеты для проекта под разным соусом. В одном спрайтшите могут пересекаться элементы с лицензиями CC0, CC-BY, CC-BY-SA, OGA-BY и GPL.

Главная сложность открытой графики — необходимость указывать всех авторов. Если вы взяли кастомную бороду от одного художника и щит от другого, их нужно упомянуть в титрах.

Авторы генератора облегчили эту задачу. Вместе с итоговой картинкой сервис выдаёт текстовый файл или CSV со списком авторов всех использованных слоёв.

Скриншот экспорта лицензий

Вам остается только приложить CREDITS.csv к вашей игре или вывести имена во внутриигровом меню титров. Если планируете релиз на площадках с DRM (вроде Steam или App Store), разработчики рекомендуют быть аккуратнее с ассетами под CC-BY-SA и выбирать варианты с CC0 или OGA-BY.

Что под капотом

Фронтенд проекта собран на Vite и TypeScript. Интересная деталь — система смены цвета элементов.

Раньше перекраска штанги или волос происходила на CPU через попиксельную замену цветов в Canvas API. На больших спрайтшитах это вызывало задержки при переключении ползунков в интерфейсе. Разработчики переписали этот узловой механизм на шейдеры WebGL.

Теперь палитра передаётся в фрагментный шейдер как текстура, а перекраска происходит на GPU. Время генерации предпросмотра упало с 200 миллисекунд до 90. Если браузер или видеокарта не поддерживают WebGL, приложение автоматически откатывается на старый CPU-рендер.

Управлять режимом рендеринга можно прямо из консоли браузера:

// Проверить текущий режим
getPaletteRecolorConfig();

// Принудительно включить CPU для отладки
setPaletteRecolorMode("cpu");

// Вернуть WebGL
setPaletteRecolorMode("webgl");

Для отслеживания производительности в код встроили профайлер. В режиме локальной разработки он замеряет FPS, расход памяти и время отрисовки слоёв на Canvas.

Локальный запуск и интеграция с движками

Если вы хотите развернуть генератор у себя или добавить свои собственные спрайты, проект легко запускается локально:

git clone https://github.com/LiberatedPixelCup/Universal-LPC-Spritesheet-Character-Generator.git
cd Universal-LPC-Spritesheet-Character-Generator
npm install
npm run dev

После этого приложение доступно по адресу http://localhost:5173.

Для популярного движка Godot созданы готовые плагины (для версий 3.5 и 4.2), которые умеют импортировать LPC-спрайтшиты и автоматически нарезать их на анимационные треки. Сообщество также собирает стартовый набор плагинов для RPG Maker MZ.

Кому пригодится проект

Universal LPC Spritesheet Generator — спасение для инди-разработчиков и участников геймджемов. Когда нет бюджета на 2D-художника, этот инструмент закрывает потребности в персонажах для прототипа или даже полноценной retro-RPG.

Графика здесь специфическая, со своим узнаваемым стилем 16-битных игр 90-х. Но если этот стиль подходит вашей игре, вы сэкономите сотни часов работы над спрайтами.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.