Почему графика старых игр выглядит устаревшей
Старые игры, особенно выпущенные в 1990-х и начале 2000-х, создавались для мониторов с низким разрешением — 320×240, 640×480 пикселей. Текстуры и спрайты имели маленький размер, а угловатость изображения скрывалась за счёт пиксельной эстетики. На современных Full HD или 4K-экранах те же пиксели превращаются в огромные «квадраты», а билинейное сглаживание даёт размытую картинку. Простое масштабирование методом ближайшего соседа лишь увеличивает размер пикселя, не добавляя деталей. Именно здесь на помощь приходят нейросети: они способны не просто растянуть картинку, а дорисовать недостающие детали, делая изображение резким и естественным.
Как работает нейросетевой апскейлинг (super resolution)
Технология super resolution (сверхразрешение) основана на свёрточных нейросетях. На вход подаётся изображение низкого разрешения, на выходе — версия с увеличенным разрешением и улучшенной детализацией. Обучение происходит на парах «низкое качество — высокое качество»: нейросеть учится предсказывать, какие пиксели должны быть добавлены. Ключевая особенность — использование skip-connection (связей между слоями), которые позволяют сети не учиться «с нуля», а лишь дорисовывать разницу между простым увеличением и реальным изображением. Это ускоряет обучение и повышает качество. Современные архитектуры, такие как EDSR и ESRGAN, используют остаточные блоки (ResNet) и генеративно-состязательное обучение для достижения фотореалистичных результатов.
Основные нейросетевые инструменты для улучшения старых игр
Наиболее популярные решения:
- ESRGAN (Enhanced Super Resolution Generative Adversarial Networks) — генеративно-состязательная сеть, способная увеличивать изображение в 2–8 раз. Отлично подходит для реалистичных текстур, добавляет детали, сохраняя стиль оригинала. Используется в модах для Morrowind, Doom, Final Fantasy VII, Max Payne.
- Waifu2x — свёрточная сеть, обученная на аниме-изображениях. Хорошо работает с мультипликационными спрайтами и текстурами. Может масштабировать в 1.6 или 2 раза. Есть онлайн-версия и локальные реализации.
- RTSR (Real-Time Super Resolution) — лёгкая модель, разработанная для работы в реальном времени. Позволяет обрабатывать игровое видео с частотой 14–25 FPS на видеокартах GTX 1060/1080. Подходит для стратегий и квестов.
- NVIDIA GameWorks: Materials & Textures — коммерческое решение от NVIDIA, использующее машинное обучение и CUDA. Требует аккаунта NVIDIA для доступа к бета-версии.
- AI Gigapixel — платный коммерческий продукт, масштабирующий изображения до 600%. Даёт отличные результаты, но требует ручной доработки артефактов.
Как выбрать подходящую нейросеть для конкретной игры
Выбор зависит от типа графики:
- Реалистичные 3D-текстуры (Morrowind, Doom, Max Payne) — лучше всего подходит ESRGAN. Она добавляет детали, делая поверхности более естественными.
- Мультипликационные спрайты и 2D-графика (Monkey Island, Fallout 2) — Waifu2x часто даёт более чистый результат, так как обучена на подобных изображениях.
- Игры с низким разрешением, но высокой частотой кадров (платформеры, шутеры) — RTSR или DLSS (если поддерживается) позволяют обрабатывать видео в реальном времени.
- Кат-сцены и видео — можно использовать ESRGAN или video2x для покадровой обработки.
Рекомендуется экспериментировать: одна и та же модель может давать разные результаты на разных текстурах. Часто моддеры комбинируют несколько нейросетей (например, Waifu2x + ESRGAN + AI Gigapixel) для достижения наилучшего качества.
Практический пример: улучшение текстур в Morrowind с помощью ESRGAN
Morrowind (2002) — классическая RPG с низкополигональными текстурами. Моддеры извлекли оригинальные текстуры, преобразовали их в PNG и обработали с помощью ESRGAN. Результат: текстуры стали более чёткими, появились детали на камнях, дереве, тканях. При этом сохранился общий стиль игры. Аналогичные моды созданы для Doom, Resident Evil 2 и 3, Final Fantasy VII. В случае Max Payne нейросеть обработала несколько тысяч текстур, а затем моддеры вручную отредактировали около 5% для устранения артефактов. Это показывает, что автоматическая обработка — лишь первый шаг; ручная доработка часто необходима.
Как запустить нейросеть для улучшения графики в реальном времени
Для обработки в реальном времени (например, в эмуляторе DOSBox) можно использовать скрипт RTSR. Требования:
- Видеокарта с поддержкой CUDA и cuDNN (NVIDIA GTX 1060 или выше).
- Установленный Python 3.7, TensorFlow GPU, OpenCV, MSS (для захвата экрана).
- Рекомендуется Ubuntu или Windows 10.
Процесс:
- Захват области экрана с игрой (обычно 320×240 или 640×480).
- Уменьшение в 2 раза, если игра использует удвоение пикселей.
- Подача на вход нейросети (модель 2.6 МБ).
- Вывод улучшенного изображения в новом окне.
Управление: клавиши WSAD и IJKL для изменения области захвата, Q — выход, 0 — включение/выключение апскейлинга. На GTX 1060 достигается 14–15 FPS, на GTX 1080 — около 25 FPS, что достаточно для стратегий и квестов, но маловато для динамичных шутеров.
Ограничения и возможные проблемы нейросетевого апскейлинга
- Артефакты — нейросеть может «додумывать» детали, которые выглядят неестественно или не соответствуют оригиналу. Особенно заметно на лицевых спрайтах и мелких текстурах.
- Производительность — обработка в реальном времени требует мощной видеокарты. Для старых ПК или ноутбуков без дискретной графики этот метод недоступен.
- Необходимость ручной доработки — даже лучшие модели (ESRGAN, AI Gigapixel) оставляют артефакты, которые приходится исправлять вручную.
- Совместимость с играми — не все игры позволяют легко извлечь и заменить текстуры. Для некоторых нужны специальные конвертеры (например, .blp в Warcraft 3).
- Юридические аспекты — распространение модов с улучшенными текстурами может нарушать авторские права, если используются оригинальные файлы.
Будущее нейросетей в ремастеринге старых игр
Крупные издатели (Ubisoft, NVIDIA) уже используют ИИ для ремастеров. Например, переиздание Heroes of Might and Magic III потребовало полугода ручной работы, а нейросети могли бы ускорить процесс. Технология DLSS от NVIDIA также основана на super resolution и применяется в современных играх. В будущем можно ожидать появления инструментов, которые позволят автоматически улучшать графику любой старой игры без необходимости извлекать текстуры. Однако полная автоматизация пока невозможна: человеческий контроль остаётся важным для сохранения художественного стиля.
Вопросы и ответы
Какая нейросеть лучше всего подходит для улучшения старых 3D-игр?
Для реалистичных 3D-текстур (Morrowind, Doom, Max Payne) лучше всего подходит ESRGAN. Она использует генеративно-состязательное обучение и способна добавлять детали, делая изображение более естественным. Для мультипликационной графики (аниме-стиль, спрайты) эффективнее Waifu2x.
Можно ли улучшать графику в реальном времени во время игры?
Да, существуют лёгкие нейросети (например, RTSR), которые могут обрабатывать видеопоток с частотой 14–25 FPS на видеокартах GTX 1060/1080. Это подходит для стратегий, квестов и RPG, но может быть недостаточно для динамичных шутеров. Также можно использовать DLSS от NVIDIA, если игра его поддерживает.
Нужно ли извлекать текстуры из игры для обработки нейросетью?
В большинстве случаев — да. Текстуры часто хранятся в специальных форматах (например, .blp, .dds) и требуют конвертации в PNG или JPG. Для популярных игр существуют готовые инструменты и руководства от сообщества моддеров. Альтернатива — обработка экрана в реальном времени, но это менее гибкий метод.
Какие видеокарты подходят для нейросетевого апскейлинга?
Для обучения и работы с тяжёлыми моделями (ESRGAN) рекомендуются NVIDIA Tesla V100 или RTX 30xx/40xx. Для лёгких моделей в реальном времени (RTSR) достаточно GTX 1060 (3 ГБ) или GTX 1080. Важна поддержка CUDA и cuDNN. На встроенной графике Intel или AMD без дискретной карты запуск невозможен.
Всегда ли результат нейросетевого улучшения выглядит хорошо?
Нет. Нейросеть может создавать артефакты, особенно на лицевых спрайтах, мелких деталях или текстурах с повторяющимися узорами. Часто требуется ручная доработка: исправление искажений, удаление «шума», корректировка цветов. Лучшие моды сочетают автоматическую обработку с ручным редактированием.
Можно ли использовать нейросети для улучшения видео из старых игр?
Да. Для покадровой обработки видео (кат-сцены, записи геймплея) можно использовать ESRGAN или video2x (на основе Waifu2x). Это позволяет повысить разрешение и улучшить детализацию. Однако процесс занимает много времени и требует мощного GPU.
Какие риски связаны с распространением модов на основе нейросетей?
Моды, содержащие оригинальные текстуры игр, могут нарушать авторские права. Рекомендуется распространять только скрипты и инструкции, а не сами обработанные файлы. Также важно указывать, что текстуры созданы с помощью ИИ, чтобы избежать обвинений в плагиате.