Выпуск DXVK 2.7, реализации Direct3D 8/9/10/11 поверх API Vulkan

Доступен выпуск прослойки DXVK 2.7, предоставляющей реализацию DXGI (DirectX Graphics Infrastructure), Direct3D 8, 9, 10 и 11, работающую через трансляцию вызовов в API Vulkan. Для использования DXVK требуется наличие драйверов с поддержкой API Vulkan 1.3, таких как Mesa RADV 25.0, NVIDIA 550.54.14 и Intel ANV 25.0. DXVK может применяться для запуска 3D-приложений и игр в Linux при помощи Wine, выступая в качестве более высокопроизводительной альтернативы встроенных в Wine реализаций Direct3D, работающих поверх OpenGL.

Основные изменения:

  • В число обязательных переведено Vulkan-расширение VK_KHR_maintenance5, что привело к повышению требований к используемым драйверам. Для работы DXVK теперь необходимы как минимум Vulkan-драйверы RADV и ANV из состава Mesa 25.0 или проприетарные драйверы NVIDIA 550.54.14 (рекомендуется использовать более новые версии Mesa 25.1 и NVIDIA 575.51.02). Ранее DXVK мог работать при наличии версий Mesa RADV 24.0, NVIDIA 535.183.01 и Intel ANV 24.0.

    Изменение в основном отразится на пользователях платформы Windows, использующих GPU AMD Polaris и Vega, поддержка которых прекращена в актуальных драйверах AMD для Windows. Более того, из-за нарастающих проблем с совместимостью решено поддерживать Windows драйверы AMD лишь по остальному принципу.

  • Переделано и модернизировано управление дескрипторами шейдеров. На системах с относительно новыми моделями GPU AMD и NVIDIA для работы с дескрипторами по умолчанию задействовано Vulkan-расширение VK_EXT_descriptor_buffer, позволяющее существенно снизить нагрузку на CPU. Изменение дало возможность повысить производительность игр, завязанных на производительность CPU, таких как Final Fantasy XIV, God of War, Metaphor: ReFantazio и Watch Dogs 2. В некоторых ситуациях на фоне более стабильной общей производительности может наблюдаться незначительное проседание производительности в играх, завязанных на производительность GPU. Для отключения оптимизации может использоваться настройка
    dxvk.enableDescriptorBuffer.
  • На системах с GPU Intel Battlemage и Lunar Lake по умолчанию включён режим, периодически запускающий процесс дефрагментации и возвращения неиспользуемой памяти системе. Благодаря уменьшению фрагментации памяти, наблюдается снижение пикового потребления памяти в играх. Для управления включением дефрагментации предусмотрена настройка dxvk.enableMemoryDefrag.
  • На дискретных GPU по возможности теперь учитываются передаваемые драйвером данные о допустимом расходовании видеопамяти (VRAM budget), а также более активно возвращаются системе неиспользуемые ресурсы при нехватке памяти в системе. Изменение позволило поднять производительность в многих играх на движке Unity на системах с ограниченным объёмом видеопамяти.
  • С целью упрощения сопровождения кодовой базы прекращена поддержка устаревших или редко используемых возможностей, таких как кэш состояний (state cache, потерял смысл после появления расширения VK_EXT_graphics_pipeline_library) и опция d3d9.forceSwapchainMSAA.
  • В шейдерах D3D11 включено по умолчанию обнуление при инициализации всех переменных и совместных буферов.
  • Добавлена поддержка программного интерфейса ID3DDestructionNotifier.
  • Внесены оптимизации, повысившие производительность игр на движке Source.
  • Решены проблемы в играх:
    • Astebreed
    • GTR – FIA GT Racing Game
    • JR EAST Train Simulator
    • LEGO City Undercover
    • Modulus
    • Star Trek: Starfleet Command III
    • Test Drive Unlimited 2
    • Wargame: European Escalation
Release. Ссылка here.