vk.com

Выберите язык

Вышла новая версия DXVK 2.7

   
  DXVK переводит вызовы DirectX в вызовы Vulkan, что позволяет играм DirectX использовать преимущества современных графических процессоров, поддерживающих Vulkan. Это обеспечивает улучшенную производительность и совместимость для многих игр DirectX на поддерживаемых платформах.
 
Изменения доступные в версии DXVK 2.7:

Поддержка драйверов

Расширение Vulkan VK_KHR_maintenance5 теперь обязательно. DXVK использует гарантии, предоставляемые этим расширением, начиная с версии 2.5, поэтому, чтобы снизить нагрузку на техподдержку, были удалены резервные варианты, которые позволяли запускать более старые драйверы.

Пожалуйста, ознакомьтесь с подробностями на странице поддержки драйверов в DXVK Wiki.

Примечание: эти изменения в первую очередь коснутся пользователей Windows с графическими процессорами AMD Polaris и Vega, для которых AMD фактически прекратила поддержку драйверов. В Linux эти старые графические процессоры будут продолжать работать с RADV при использовании Mesa 25.0 или более поздней версии.

Из-за растущего числа проблем с совместимостью драйвера AMD для Windows, его поддержка больше не является приоритетной задачей.

Изменения модели привязки

Управление дескрипторами в значительной степени было переписано и модернизировано. На новых картах AMD и Nvidia VK_EXT_descriptor_buffer теперь используется по умолчанию, что значительно снижает нагрузку на центральный процессор по сравнению с устаревшей моделью привязки и, таким образом, может повысить производительность в играх, требовательных к центральному процессору, таких как Final Fantasy XIVGod of WarMetaphor: ReFantazioWatch Dogs 2 и других.

Эта функция остаётся отключённой на старых графических процессорах из-за значительного снижения производительности в некоторых случаях, особенно на Nvidia Pascal и более ранних версиях, а также на AMD RDNA2 и более ранних версиях при использовании AMDVLK или драйвера AMD для Windows. На RADV эти проблемы не влияют.

Примечание: В некоторых случаях, ожидается небольшое снижение производительности с привязкой к графическому процессору в обмен на более стабильную общую производительность. Пользователи могут переопределить поведение по умолчанию с помощью опции dxvk.enableDescriptorBufferНастоятельно рекомендуется включить изменение размера панели в поддерживаемых системах.

Управление памятью

Дефрагментация памяти теперь включена по умолчанию на графических процессорах Intel Battlemage и Lunar Lake. На более старых графических процессорах Intel эта функция отключена, так как по неизвестным причинам может вызывать проблемы с рендерингом, см. #4395.

На дискретных графических процессорах, DXVK будет максимально эффективно использовать выделенную драйвером видеопамять и динамически перемещать неиспользуемые ресурсы в системную память при нехватке памяти. Это должно повысить производительность во многих играх на Unity Engine в системах с ограниченным объёмом видеопамяти и может позволить использовать более высокие настройки качества текстур в некоторых играх. При превышении объёма видеопамяти, по-прежнему ожидаются временные замедления и подтормаживания.

Примечание: в настоящее время эта функция не работает должным образом на графических процессорах AMD из-за проблем с драйвером ядра.

Удаление устаревших функций

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

Кроме того, была удалена опция d3d9.forceSwapchainMSAA . Эта функция была не очень полезной, поскольку большинство игр, либо используют дополнительные цели рендеринга, либо сами предоставляют встроенную опцию MSAA. Для игр, в которых нет встроенной опции MSAA, пользователям рекомендуется использовать Gamescope для запуска этих игр с более высоким разрешением рендеринга.

Исправления ошибок и улучшения

  • Добавлена поддержка плоских видеовыходов. (PR #4872).
    Это необходимо для воспроизведения видео в JR EAST Train Simulator.
  • Теперь шейдеры D3D11, по умолчанию обнуляют все переменные и групповую память, чтобы обойти ошибки в играх, приводящие к неопределённому поведению. Соответственно, опция d3d11.zeroWorkgroupMemory была удалена.
  • Оптимизирован D3D9 StretchRect в некоторых случаях многосэмплового разрешения, возникающих в Source Engine. (PR #5023)
  • Исправлен случай некорректного использования Vulkan в Modulus и, возможно, в других играх на Unity Engine, использующих видеоAPI D3D11.
  • Реализована поддержка интерфейса ID3DDestructionNotifier .
  • Устройства Vulkan, не поддерживающие необходимые функции для работы DXVK, больше не будут отображаться как адаптеры DXGI/D3D9. Это может устранить сбои, возникающие при использовании устаревшего графического драйвера или неподдерживаемого встроенного графического процессора.
  • Попытка собрать DXVK в среде MinGW с поддержкой AVX, будет приводить к ошибке во время компиляции.
    Нет возможности поддерживать сборки с поддержкой AVX из-за проблем с набором инструментов.
  • Astebreed: Исправлен сбой при изменении параметров графики. (PR #5034)
  • GTR — FIA GT Racing Game: устранена проблема с запуском игры. (PR #5072)
  • LEGO City Undercover: устранена проблема в игре, из-за которой не воспроизводился вступительный ролик. (#4997, PR #5000)
  • Star Trek: Starfleet Command III: устранена утечка ресурсов в сборке GOG. (PR #5056)
  • Test Drive Unlimited 2: устранена проблема с переключением между вкладками, приводившая к потере ввода. (PR #5057)
  • Wargame: European Escalation: устранена проблема с гаммой, возникавшая при обнаружении в игре графического процессора Nvidia. 
 
  Скачать и посмотреть более подробную информацию, вы можете на GitHub.