Найти в Дзене
Games4Linux

Проект D7VK обновлен до версии 1.3

Для ценителей ретро-гейминга на Linux наступил знаковый момент. Разработчики D7VK, проекта, который является логическим продолжением DXVK, но для старых версий DirectX (5, 6, 7), представили релиз 1.3. Это обновление не просто исправляет ошибки — оно открывает портал в прошлое, добавляя поддержку одного из первых более-менее «вменяемых» 3D-API от Microsoft — Direct3D 5. Благодаря этому на современном Vulkan-стеке можно запускать культовые тайтлы конца 90-х, которые раньше либо не работали, либо работали с проблемами. Direct3D 5 был выпущен в эпоху Windows 95, когда Microsoft отчаянно пыталась предложить игровой индустрии альтернативу доминировавшему тогда API Glide от 3dfx. D3D5 представил новый способ отрисовки через методы `DrawPrimitive`/`DrawIndexedPrimitive`, который, в отличие от своего ужасного предшественника (D3D3 Immediate Mode), оказался достаточно здравым и просуществовал вплоть до DirectX 9. «Некоторые могут сказать, что D3D5 положил начало медленному, но неизбежному упадк
Оглавление

Для ценителей ретро-гейминга на Linux наступил знаковый момент. Разработчики D7VK, проекта, который является логическим продолжением DXVK, но для старых версий DirectX (5, 6, 7), представили релиз 1.3. Это обновление не просто исправляет ошибки — оно открывает портал в прошлое, добавляя поддержку одного из первых более-менее «вменяемых» 3D-API от Microsoft — Direct3D 5. Благодаря этому на современном Vulkan-стеке можно запускать культовые тайтлы конца 90-х, которые раньше либо не работали, либо работали с проблемами.

Главное нововведение: погружение в эпоху D3D5

Direct3D 5 был выпущен в эпоху Windows 95, когда Microsoft отчаянно пыталась предложить игровой индустрии альтернативу доминировавшему тогда API Glide от 3dfx. D3D5 представил новый способ отрисовки через методы `DrawPrimitive`/`DrawIndexedPrimitive`, который, в отличие от своего ужасного предшественника (D3D3 Immediate Mode), оказался достаточно здравым и просуществовал вплоть до DirectX 9. «Некоторые могут сказать, что D3D5 положил начало медленному, но неизбежному упадку Glide, что может быть правдой, а может и нет. На самом деле, Glide оставался главным фокусом разработчиков вплоть до эпохи D3D7», — отмечают авторы D7VK. Важная оговорка от разработчиков: D3D5- и D3D6-рендереры в играх того времени почти всегда уступали Glide в производительности и функциональности. Поэтому поддержка D3D5 в D7VK — это скорее исторический жест и запасной вариант. Золотое правило остаётся неизменным: если игра предлагает выбор, всегда предпочитайте рендерер Glide.

Ключевые исправления и улучшения в D7VK 1.3

  • Более умная эмуляция FSAA (сглаживания): Эмуляция Full-Screen Anti-Aliasing теперь активируется только для игр, которые его поддерживают, а не глобально. Это экономит пропускную способность памяти. Принудительно включить её всё ещё можно, но пользователям AMD стоит быть осторожными из-за известного ограничения драйверов при работе с 16-битными буферами.
  • Борьба с багами рендеринга: Благодаря детективной работе контрибьютора @CkNoSFeRaTU был найден и исправлен скрытый баг в настройке сопроцессора (FPU), который влиял на все игры D3D5/6. Это устранило грубые графические артефакты в Legacy of Kain: Soul Reaver (теперь Разиэль выглядит достойно!) и Homeworld: Emergence (Cataclysm).
  • Повышение производительности: Исправлена ошибка загрузки текстур в D3D5/6, которая мешала достичь оптимальной скорости в таких играх, как Drakan: Order of the Flame и Freespace 2.
  • Исправление видео и совместимости: Устранён обходной путь, мешавший работе прокси-интерфейсов. Это позволяет корректно запускать под Windows такие игры, как Gothic 1/2, No One Lives Forever и проекты на движке LithTech, а также правильно отображать интро-видео.
  • Улучшение логирования: Переменные окружения для логирования теперь имеют префикс D7VK_  для чёткого разделения логов D7VK и DXVK.

Что можно попробовать запустить? Список ностальгии

Для тех, кто хочет окунуться в эпоху Win9x, разработчики составили список игр, которые уже хорошо работают с новой поддержкой D3D5:

  • Carmageddon II: Carpocalypse Now
  • Tomb Raider II
  • Mortal Kombat 4
  • Nightmare Creatures
  • N.I.C.E 2
  • Mobil 1 Rally Championship
  • Deathtrap Dungeon
  • Lands of Lore III

«Как забавный факт: некоторые из этих релизов сосуществовали с последним поколением DOS-игр, выпущенных на CD-ROM. Лично я никогда не думал, что увижу такие тайтлы, работающие на бэкенде DXVK, но вот мы здесь», — делятся впечатлениями создатели. Этот релиз — прекрасный пример того, как современные технологии (Vulkan) используются для сохранения цифрового наследия. D7VK 1.3 не просто исправляет старые игры, а возвращает их к жизни на современном железе и операционных системах, давая новому поколению шанс оценить классику.

Скачать D7VK 1.3 и ознакомиться с полным списком изменений можно на GitHub-странице проекта. Приятного погружения в раннюю эпоху 3D!