Выпуск DXVK 3.0

3 мин
Выпуск DXVK 3.0

26 июня 2026 года состоялся выпуск открытой библиотеки DXVK 3.0 для трансляции вызовов DirectX 8/9/10/11 в нативные для Linux вызовы Vulkan, позволяющей запускать 3D-приложения в Linux с помощью Wine, выступая в качестве более высокопроизводительной альтернативы встроенных в Wine реализаций Direct3D, работающих поверх OpenGL. Исходный текст проекта написан на C++ и опубликован на GitHub под лицензией zlib. Релиз DXVK 2.0 произошёл в ноябре 2022 года.

Подход DXVK является важной частью программного стека Steam Play (Proton) от Valve для включения игр Windows в Linux. Для использования DXVK требуется наличие драйверов с поддержкой программный интерфейс Vulkan 1.4, таких как NVIDIA 575.51.02, Mesa AMD RADV 25.0, NVIDIA 25.1 и Intel ANV 25.1.

По информации OpenNET, основные изменения и доработки в DXVK 3.0:

  • исправлены ранее обнаруженные ошибки и баги;

  • для всех поддерживаемых шейдерных моделей задействован компилятор шейдеров dxbc‑spirv. Компиляция шейдеров перенесена из основного потока в отдельные потоки. Реализовано кэширование на диске промежуточного представления шейдеров (кэш сохраняется в подкаталоге AppData/Local в текущем префиксе Wine). Использование dxbc‑spirv позволило снизить потребление памяти, сократить время запуска, исключить подвисания и избавиться от ряда проблем, проявлявшихся в играх Postal: Brain Damaged, Snowrunner, Overwatch, God of War, Days Gone и Final Fantasy XIV, которых не удавалось устранить в старом коде трансляции шейдеров;

  • для D3D9 реализована поддержка шейдерных моделей 1–3;

  • по умолчанию задействовано Vulkan‑расширение VK_EXT_descriptor_heap. По сравнению с ранее применявшимся хранилищем дескрипторов на базе Vulkan‑расширения VK_EXT_descriptor_buffer, новая реализация обеспечивает тот же уровень производительности операций, выполняемых на CPU, но снижает нагрузку на GPU, особенно при использовании видеокарт NVIDIA. Для работы на системах с видеокартами NVIDIA требуется как минимум версия проприетарных драйверов NVIDIA 595.84. Реализация на базе VK_EXT_descriptor_buffer объявлена устаревшей и будет удалена в одном из следующих выпусков;

  • в реализации Direct3D 9 вместо генерации шейдеров на лету теперь используются uber‑шейдеры, оптимизированные версии которых компилируются в фоне, что решило проблемы с подвисанием некоторых старых игр, таких как Unreal Tournament 2004. Обеспечена загрузка буферов по необходимости, как в Windows, вместо заблаговременного размещения в видеопамяти, что устранило аварийные завершения некоторых 32-разрядных D3D9-игр из‑за ограниченного адресного пространства;

  • обеспечена корректная работа мультисэмплинга (MSAA) в режиме D3DRS_MULTISAMPLEANTIALIAS на системах с поддержкой Vulkan‑расширений VK_EXT_sample_locations и VK_EXT_extended_dynamic_state3, что решило проблемы с рендерингом в Anno 1701, Men of War и других играх при включении MSAA;

  • обеспечена сопровождение работы с общими ресурсами (Shared resources) в штатных версиях Wine без дополнительных патчей от проекта Proton;

  • удалена переменная окружения DXVK_FRAME_RATE, применявшаяся для ограничения частоты кадров (Frame rate limiter), вместо которой рекомендуется применять внешние ограничители, такие как Gamescope и Mangohud. Для активации встроенного ограничителя можно применять настройку «dxvk.maxFrameRate = n»;

  • решены проблемы в играх:

    • Bioshock Infinite;

    • Borderlands 2;

    • Colin McRae Rally 3;

    • Dirt Rally 2;

    • Fallout New Vegas;

    • Insurgency & Counter‑Strike;

    • Jump Space;

    • Max Payne;

    • Railroad Tycoon 3;

    • Resident Evil 6;

    • Sang‑Froid: Tales of Werewolves;

    • Sea Dogs;

    • Splinter Cell 4;

    • The I of the Dragon;

    • The Sims 3;

    • Total War: Pharaoh;

    • Witch on the Holy Night;

    • World of Final Fantasy;

    • Vietcong.

  • требования к минимальной версии графического api повышены до Vulkan 1.4. Для работы теперь требуются как минимум версии драйверов AMD RADV 25.0, NVIDIA 575.51.02, NVIDIA 25.1 и Intel ANV 25.1.

Читают сейчас

Mac mini с M6 стабильно эмулирует Pentium II на 600 МГц; итог на 20% выше, чем у Mac mini с M4

14 минут назад

Mac mini с M6 стабильно эмулирует Pentium II на 600 МГц; итог на 20% выше, чем у Mac mini с M4

Разработчик протестировал свежий Mac mini с M6 в эмуляторе ретрокомпьютеров 86Box. Платформа смогла стабильно эмулировать Pentium II Deschutes с частотой 600 МГц под Windows 98 SE со 100% скоростью эм

GitHub Copilot получил локальную изолированную среду для выполнения действий

20 минут назад

GitHub Copilot получил локальную изолированную среду для выполнения действий

GitHub добавил в приложение Copilot локальные изолированные среды (local sandboxes), которые позволяют агенту выполнять действия с кодом внутри ограниченного окружения на компьютере разработчика. Тако

Google тестирует функцию Gemini «Позвони за меня»

27 минут назад

Google тестирует функцию Gemini «Позвони за меня»

Google внедряет в ИИ Gemini новую функцию под названием «Call for Me» (“Позвони за меня”), позволяющую звонить в различные организации. На начальном этапе она станет доступна владельцам смартфонов Pix

Ищем спикеров на зимнюю Conversations: опен-колл до 10 октября

44 минуты назад

Ищем спикеров на зимнюю Conversations: опен-колл до 10 октября

Опен-колл на зимнюю Conversations закрывается 10 октября. У нас ценят зрелые кейсы, смелые эксперименты (с метриками!), челленджи, а равным образом AI-истории, которые заставляют иначе взглянуть на за

У японских книжных магазинов резко выросло количество заказов

47 минут назад

У японских книжных магазинов резко выросло количество заказов

Примерно с августа этого года японские интернет‑магазины подержанных книг фиксируют резкий увеличение числа крупных заказов. Представители магазинов сообщают о показателях вроде «продажи 100 книг в де