Достъпен е ъпдейт на слоя 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, като посочва по-високопроизводителна алтернатива на вградените реализации на Direct3D в Wine, които работят над 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
