Достъпен е изданието на слоя DXVK 2.5, което предлага реализация на DXGI (DirectX Graphics Infrastructure), Direct3D 8, 9, 10 и 11, работеща чрез транслация на повиквания в API Vulkan. За използването на DXVK е необходимо наличие на драйвери, поддържащи API Vulkan 1.3, като Mesa RADV 24.0, NVIDIA 535.183.01, Intel ANV 24.0, AMDVLK 2024.Q1.3, AMDGPU-PRO и NVK 24.1. DXVK може да се използва за стартиране на 3D приложения и игри в Linux с Wine, служейки като по-високопроизводителна алтернатива на вградените в Wine реализации на Direct3D, работещи върху OpenGL.
Основни промени:
- Кодът за управление на паметта и ресурсите е напълно пренаписан за по-ефективна работа с видео паметта. Сега периодично се стартира процес на дефрагментация, който връща неизползваната памет на системата. Връщането на паметта се иницира при недостиг на памет в системата или при наличие на голям обем неизползвана памет (оставянето на малък обем неизползвана памет след процеса е полезно за ускорение на последващи операции по разпределение на паметта).
Благодарение на намалената фрагментация на паметта, се наблюдава съществено намаляване на пиковото потребление на памет в игри като God of War, в някои ситуации достигаща до 1 ГБ. Най-добрият резултат от новия код за управление на паметта се постига с драйвери, поддържащи Vulkan разширения VK_EXT_memory_budget и VK_KHR_maintenance5. За управление на включването на дефрагментацията е предвидена настройка dxvk.enableMemoryDefrag, която е изключена за драйвера Intel ANV.
- За Direct3D 8/9 е реализирана поддръжка на емулирани курсори, което позволява в игрите да се задават произволни изображения за курсор на мишката. Това изменение решава проблемите с изчезването на курсора в Dungeon Siege 2, Act of War и някои стари игри на базата на Direct3D 8.
- По подразбиране е включена стриктна емуляция на изчисления с плаваща запетая при използване на NVIDIA 565.57.01 и по-нови версии на драйверите.
- Извършена е работа за повишаване на производителността на Direct3D 8/9 на мобилни GPU.
- В Direct3D 11 е реализирано намаляване на интензивността на операциите по създаване, зареждане и връщане на ресурси в случай на надвишение на определен прагов обем от разпределената памет, което позволява повишаване на стабилността и намаляване на потреблението на памет в 32-битови игри.
- В DXGI в подменяемите виртуални фреймбуфери (SwapChain) са реализирани ефекти на последователна смяна на буферите, позволяващи на игрите да прочетат съдържанието на вече показаните буфери.
- За dxvk-native е добавен бекенд на базата на библиотеката SDL3.
- За повишаване на ефективността на управлението на паметта е включено Vulkan разширение VK_EXT_pageable_device_local_memory, в случай че драйверът го поддържа.
- Отстранени са проблемите, проявяващи се в игрите:
- Ascension to the Throne
- Call of Duty: Modern Warfare 2 Campaign Remastered
- Command & Conquer: Generals
- Diablo 4
- Dishonored 2
- King’s Bounty: Warriors of the North
- Rayman 3
- Ryse: Son of Rome
- Sekiro: Shadows Die Twice
- Tales of Arise
- The Sims 4
- Tomb Raider: Legend
- Total War: Rome II
- Vindictus
- Yakuza 0
- Yakuza Kiwami
Източник: opennet.ru
