DXVK 2.4.1: Улучшения для лаунчеров, более надежный D3D8 и множество исправлений для игр на Linux и Steam Deck

2024-09-26 2124 комментарии
Vulkan-реализация Direct3D для Linux получила обновление до DXVK 2.4.1. В этом выпуске улучшена работа лаунчеров, повышена надежность D3D8, а также исправлены баги в популярных играх, включая GTA: San Andreas и The Sims 2

В этом выпуске представлено множество улучшений и исправлений!

Общие улучшения

  • Динамический размер памяти: Размер блоков памяти теперь определяется динамически на основе объема памяти, уже выделенной приложением. Это должно улучшить работу различных игровых лаунчеров "из коробки". Опция dxvk.maxChunkSize была соответственно удалена.
  • Исправления для Wayland: Решена проблема, при которой Vulkan swap chain не всегда корректно пересоздавался в нативной среде Wayland. (PR #4252)
  • Оптимизация для Nvidia: Исправлена проблема с чрезмерным ростом пулов дескрипторов на видеокартах Nvidia в некоторых ситуациях. (PR #4166)
  • Изменения в генерации шейдеров: По умолчанию изменена генерация кода шейдеров для инструкций DXBC mad во избежание мерцаний в играх, которые используют разные вершинные шейдеры для рендеринга одной и той же геометрии в нескольких проходах. Соответственно, опции d3d11.longMad и d3d9.longMad были удалены.

D3D8 / D3D9

  • Повышение надежности: Улучшена общая устойчивость реализации D3D8 за счет обработки ошибок и исправления утечек памяти.
  • Увеличение производительности: Немного улучшена производительность путем оптимизации загрузки вершинных буферов. (PR #4275)
  • Значительное повышение производительности в некоторых играх, использующих программную обработку вершин. (PR #4274)
  • Исправление полноэкранного режима: Решены проблемы с полноэкранным отображением в некоторых играх, созданных на Game Maker. (PR #4245)
  • Оптимизация текстур: Удален флаг VK_IMAGE_USAGE_SAMPLED_BIT из текстур, которым он не нужен. (#4176)
  • Строгая эмуляция чисел с плавающей запятой: По умолчанию включена на AMDVLK, так как этот драйвер оптимизирует шаблоны, выдаваемые DXVK. (PR #4203). Обратите внимание, что это уже было реализовано в RADV.

Исправленные игры:

  • Chrome: Gold Edition: Включено ограничение в 60 FPS для обхода проблем игры на более высоких частотах кадров. (PR #4260)
  • GTA: San Andreas: Исправлена регрессия, из-за которой игра вылетала с DXVK 2.4 (#4141, PR #4151)
  • Operation Raccoon City: Исправлено падение игры. (#4172, PR #4175)
  • Prince of Persia (2008): Включено ограничение в 240 FPS для обхода проблем игры на очень высоких частотах кадров. (PR #4281)
  • Rayman 3: Исправлена пропадающая геометрия. (PR #4143)
  • Serious Sam 2: Исправлены внутриигровые видео (#4158, PR #4161)
  • Splinter Cell: Pandora Tomorrow: Включено ограничение в 60 FPS для исправления некорректного ввода и физики. (PR #4254)
  • The First Templar: Исправлены проблемы с освещением. (#4291, PR #4292)
  • The Sims 2: Исправлена регрессия, из-за которой игра вылетала в предыдущих версиях DXVK (PR #4277)

D3D11 / DXGI

  • Обход проблемы с выбором GPU: Решена общая проблема, при которой некоторые игры по умолчанию выбирали интегрированную графику на основе доступной видеопамяти.
  • Корректное отображение VRAM: Исправлено поведение, при котором различные игры работали некорректно, когда объем доступной VRAM сообщался как степень двойки.
  • Изменения в генерации шейдеров: Изменена генерация кода шейдеров для инструкций скалярного произведения, чтобы быть более соответствующей генерации кода на нативных драйверах. Это исправляет проблему с отображением воды в игре Trails through Daybreak на Nvidia. (#4162)
  • Удаление мертвого кода: Реализован базовый проход удаления мертвого кода, чтобы избежать генерации недопустимых SPIR-V шейдеров в редких случаях. Примечание: Все эти изменения, связанные с шейдерами, аннулируют базы данных fossilize.
  • Улучшение полноэкранного режима: Теперь игры будут выходить из полноэкранного режима, когда окно игры теряет фокус. Это ближе к поведению Windows и исправляет различные проблемы с зависанием игр на некоторых системах. (PR #2675)
  • Приоритет встроенных опций: Убедились, что встроенные опции в DXVK для игры имеют приоритет над опциями, включенными/отключенными через DXVK-NVAPI. Это исправляет снижение производительности в God of War на GPU Nvidia.

Исправленные игры:

  • Batman Arkham Knight: Устранено препятствие, при котором игра не запускалась при обнаружении интегрированной графики Intel. (PR #4152)

Batman Arkham Knight

  • Hunt Showdown: Исправлен сбой, вызванный тем, что DXVK сообщал слишком высокую версию драйвера UMD.
  • Kena: Bridge of Spirits: Исправлено неправильное отображение воды, когда игра обнаруживает графику Intel. (PR #4207)
  • Microsoft Flight Simulator: Исправлен искаженный экран при запуске (#4276)
  • Senran Kagura Peach Ball: Исправлено некорректное отображение моделей персонажей. (#4216)
  • The Sims 4: Обход падения, вызванного ошибкой использования после освобождения памяти в игре.

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

Как обновиться?

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

Примечание: Всегда делайте резервные копии перед внесением изменений!

Инструкция по обновлению

Для 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, которую вы хотите обновить.

  • Перейдите в директорию lib и lib64 для 32-битных и 64-битных файлов соответственно.
  • Внутри каждой из них найдите папку wine, затем dxvk.
  • Замените файлы в этой папке на новые версии из скачанного архива DXVK.
  • Если что-то пошло не так, вы можете удалить папку /dist (для Proton 8 и ниже), и Steam заново скачает Proton при следующем запуске.
© . По материалам Gamingonlinux
Комментарии и отзывы

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

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