Обновление DXVK 2.4 для игр на Linux: Поддержка Direct3D 8, улучшенное ограничение частоты кадров и исправления для популярных игр

2024-07-10 1214 комментарии
Вышло обновление DXVK 2.4 для Linux, добавляющее поддержку Direct3D 8 через D8VK, улучшенное управление ограничением частоты кадров и исправления для множества игр, включая Fallout 4 и Guild Wars 2. Новая версия также улучшает совместимость с модами и включает различные другие обновления и исправления

DXVK — это проект с открытым исходным кодом, который реализует Direct3D 9, 10 и 11 поверх Vulkan, кросс-платформенного API для работы с графикой и вычислениями. DXVK предназначен для использования на операционных системах Linux, а также в средах совместимости, таких как Wine и Proton.

Стало доступно очередное крупное обновление DXVK. Версия 2.4 добавляет поддержку Direct3D 8 благодаря D8VK. Таким образом, теперь DXVK охватывает версии Direct3D 8/9/10/11, а VKD3D-Proton продолжает поддерживать Direct3D 12.

Нововведения в DXVK 2.4

Разработчик Итан Ли (FNA / Linux ports) внес значительные изменения в этот выпуск, добавив поддержку нескольких системных оконных бэкендов, которые приложение может выбирать во время выполнения. Кроме того, теперь реализована правильная версия ABI для нативных библиотек.

Регулировка ограничения частоты кадров

В новой версии была скорректирована работа ограничения частоты кадров для эмуляции ненативной частоты обновления. В ситуациях, когда режим дисплея не может быть изменен (например, в Proton), DXVK может сообщать игре другую частоту обновления, чем та, с которой фактически работает дисплей. Это может быть проблематично для игр, требующих запуска с частотой 60 FPS, но не ограничивающих частоту кадров при использовании дисплея с частотой 60 Гц.

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

Если игра работает с более низкой частотой кадров, чем ожидалось, и не предоставляет опцию изменения частоты обновления в игре, это поведение можно отключить, установив параметр d3d9.maxFrameRate = -1 (или соответствующий параметр dxgi для игр на D3D10+). Установка параметра DXVK_FRAME_RATE также переопределяет это поведение, как обычно.

Это нововведение также применимо к VKD3D-Proton, начиная с данного коммита.

Исправления для игр

В этом обновлении были внесены исправления для следующих игр:

  • Battlefield 2, 2142
  • Dead Space 2
  • Dragonshard
  • Fallout 4
  • Fallout: New Vegas
  • Ghostbusters Remastered
  • Gothic 3
  • Guild Wars 2
  • Prototype
  • Star Citizen
  • The Sims 2
  • Tomb Raider Legend
  • Red Faction: Guerrilla Remastered
  • Rise of Nations
  • Watch Dogs, Watch Dogs 2
  • WRC 4

Дополнительные улучшения

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

Для подробностей и полного списка изменений смотрите странице проекта на GitHub.

Как обновить DXVK

Если вы хотите узнать, как обновить DXVK, вам не нужно предпринимать никаких действий. Proton и GE-Proton используют DXVK напрямую и включают обновления в своих новых версиях. Однако, если вы хотите попробовать новую версию DXVK самостоятельно, вы можете обновить её вручную. Делайте это на свой страх и риск.

Для обновления просто замените существующие файлы DXVK скачанными из последнего релиза. Найдите установку Proton по пути, зависящему от расположения вашей библиотеки Steam:

Для Proton 9 и Proton Experimental:

path-to-your/SteamLibrary/steamapps/common/Proton x.x/files 

Для Proton 8 и ниже:

path-to-your/SteamLibrary/steamapps/common/Proton x.x/dist

Где x.x — версия Proton, в которую вы хотите установить новый DXVK.

Внутри вы увидите папки "lib" и "lib64" для 32-битных и 64-битных версий соответственно. В каждой из них есть папка "wine", а внутри нее — папка "dxvk". Замените файлы в этой папке на новые версии. Если что-то пойдет не так, один из способов переустановки — это удаление папки "/dist".

© . По материалам GamingOnLinux
Комментарии и отзывы

Нашли ошибку?

Новое на сайте