Утилита dgVoodoo 2 - создаем ремастер старых игр на примере Starship Troopers: Terran Ascendancy

Настоящая классика не стареет — она лишь ждёт, когда её снова запустят. А если добавить пару современных технологий, то прошлое заиграет новыми красками
12 февраля 2025, среда 14:11
Dante для раздела Блоги

Хорошая игра — это драйв, сюжет, эмоции, впечатления и нотки ностальгии через 20 лет. На самом деле выходит мало проектов, к которым хочется возвращаться снова и снова. Большинство современных игр - серые посредственности, обсуждаются пару недель и растворяются в потоке контента. Давно не видел обзоров из нижнего интернета, после которого захотелось бы закричать: "Да! Я хочу эту игру!" Почти все игры из личного портфолио уходят корнями в прошлое. Starship Troopers: Terran Ascendancy — та самая, что приучила к качественному геймплею. Решил тряхнуть стариной, а заодно проверить, как современные технологии могут освежить классику.

Предисловие

Когда-то давным-давно трава была зеленее, деревья выше, мороженое стоило 15 копеек, а игры делали энтузиасты для энтузиастов. Чуть больше года назад вышла игра Starship Troopers: Terran Command по моей любимой вселенной. Терпения хватило буквально на две первые миссии — бездушное поделие по известной франшизе. Двадцать пять лет назад была другая игра — Starship Troopers: Terran Ascendancy, которую я переигрывал несколько раз. По роликам с YouTube можно подумать, что проекты имеют минимальные отличия и дух старой эпохи бережно перенесли в современность. Но это не так.

Старая Starship Troopers: Terran Ascendancy имела свою душу. Каждый космодесантник отличался не только характеристиками, но и имел свою специализацию, историю, награды, звания. Каждого можно было одеть и вооружить согласно личным предпочтениям и тактике игры. Смерть одного члена команды — это трагедия, часто приводившая к перезапуску миссии, чтобы все прошло гладко. Сегодня космодесантники — это расходный материал, построишь еще сотню таких же.

Игра 25-летней давности, какой бы совершенной она ни была, морально устаревает в графическом плане и требует косметических улучшений. Помимо Starship Troopers: Terran Ascendancy, могу вспомнить еще с десяток игр, что свое величие оставили в далеком прошлом.

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

Техника в руках дикаря — кусок железа

За последние восемь лет технологии совершили гигантский скачок. Пока одни с лупой пытаются разыскать новые пиксели, другие не успевают знакомиться с новыми утилитами, методами, вариантами и механизмами использования той или иной технологии. Как вам такой факт: «Существует более 100 версий DLSS вместо привычных 1, 2, 3, 3.5 и 4» и все они работают по-разному в разных играх. Обозначение 3.5 — это всего лишь название линейки, внутри которой существует множество вариантов, дорабатываемых каждый день.


А еще есть:

  • DLAA (Deep Learning Anti-Aliasing);
  • NIS (Nvidia Image Scaling);
  • VSR (RTX Video Super Resolution);
  • RTX HDR;
  • RTXGI (RTX Global Illumination);
  • RTXDI (RTX Direct Illumination);
  • DSR (Dynamic Super Resolution);
  • DLDSR (Deep Learning Dynamic Super Resolution);
  • MFAA (Multi-Frame Sampled Anti-Aliasing);
  • VRSS (Variable Rate Supersampling);
  • Content Adaptive Shading;
  • Texture Space Shading;
  • Optical Flow Accelerator;

И это не исчерпывающий список. Все эти технологии используются в разных сочетаниях, в разных ситуациях. А ведь существует еще и красный лагерь с их отдельными фишками. И все это разнообразие используется на том или ином уровне энтузиастами и продвинутыми пользователями.

Автоматическое улучшение картинки в старых играх

Все мы слышали, как ноет нижний интернет. Новейшая RTX 5090 не тянет игры в 4K. Они страдают от боли в глазах и постоянного мыла. Апскейлинг из 1080p через нейросети до 2160p — это искусственность игрового мира.

А что будет, если взять игру из эры мезозоя, что работала в максимальном 1280×720, увеличить ее картинку до 7680×4320, почистить шарпингом и добавить анизотропную фильтрацию x16? Я бы упомянул еще ReShade, что добавляет шейдеры и освещение, но возникли проблемы с запуском. Вот вам ремастер и готов. На поиск информации, тесты и выводы ушло примерно 3 часа, плюс запустил еще пару старых игр.


Игровые консоли Steam Deck

Данное устройство упоминаю лишь по одной причине: вокруг него образовалось сильнейшее комьюнити энтузиастов с финансированием от дядюшки Габена. Наиболее заметное и известное творение этого сообщества — Valve Proton.

Утилита, что позволяет работать программам, разработанным под Windows, в операционной системе Linux. Подобный вид утилит называется wrapper (враппер). Наиболее известные: Wine, Rosetta 2, DXVK, MoltenVK, VKD3D-Proton, CrossOver, GlideN64, WineD3D for Windows, Glide Wrapper by Zeus. Список огромный. Запустить игру, написанную для x86, на ARM? Портировать на macOS? Заменить одно API для рендеринга на другое? Эмуляторы консолей бегают где-то рядышком.

dgVoodoo 2 — это переходник между старыми API и новыми

Утилита существует с 2016 года и стабильно улучшается долгие годы. Скажу больше: в большинстве современных сборок старых игр она идет по умолчанию. Энтузиасты регулярно добавляют ее в свои проекты для улучшения графики. Есть отдельные разработки, но эта — универсальная.

Она позволяет преобразовывать DX1-7, DX8, DX9, все версии Glide в DX11 и DX12. Данная процедура необходима для запуска инструментов, встроенных в современные видеокарты.

В программе много интересных функций. За 8 лет разработки создатели уловили суть и точно знают, что требуется народу. Но многие дополнительные инструменты работают нестабильно. В частности, у масштабирования есть косяки. Если в вашей игре они не встречаются, это хорошо, но есть универсальный инструмент от производителей видеокарт. Он выполняет главное: переводит игру в DX11-режим.

Игра не сворачивается и не дает делать скриншоты… футажи снимал на телефон. Уж простите.

После подобного финта ушами игру распознала встроенная функция в AMD Software Adrenaline Edition.

Установка dgVoodoo 2

Скачиваем архив с GitHub и распаковываем на рабочий стол. Затем переносим утилиту dgVoodooCpl.exe в папку с исполняемым файлом игры. В архиве также есть несколько DLL-файлов. Определяем, на каком API работает игра, и копируем соответствующие библиотеки. В большинстве случаев это будет MS x86.

Запускаем утилиту и указываем в ней путь к папке с исполняемым файлом.


Обязательно проверяем наличие галочки в поле dgVoodoo Watermark — она позволяет определить, работает ли утилита в игре или где-то накосячили с настройками. После всех удачных манипуляций и обкатки её можно снять.

Настраиваем AMD Software Adrenaline Edition

Заходим в настройки, переходим в раздел Игры и ищем нашу игру. Старые проекты программа не воспринимает и не способна их обнаружить.


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

После того как игра появилась, жмякаем на нее и переходим в индивидуальные настройки.

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

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

В описании утилиты dgVoodoo 2 абсолютно случайно рассматривается игра Starship - Terran Ascendancy и сравнивается встроенная функция масштабирования в утилите и через драйвер.

Все упирается в масштабирование интерфейса игры. Через виртуальный драйвер он соответствует виртуальному разрешению и может быть слишком мелким. Картинка через драйвер выглядит лучше, но интерфейс становится неудобным. Они предлагают свой вариант улучшения картинки.

Выбираем исходящее разрешение и улучшайзеры в программе, а в игре ставим разрешение 1280×720. Сглаживание и прочие эффекты улучшат изображение, а интерфейс будет нормальным. Этот вариант у меня не заработал в Wizardry 8 и Кодексе войны. Нужно экспериментировать и подбирать сочетания.

Общий результат постарался запечатлеть на телефон. Уж простите. Сам пересматривал картинку и ужаснулся, но не смог сделать скриншот. Постарался подобрать одинаковый ракурс. Оба скриншота сделаны в игре с идентичными максимальными настройками в 1920×1080. Картинка менялась исключительно внешними средствами.

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


Послесловие

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