Выпуск проекта DXVK 1.1 с реализацией Direct3D 10/11 поверх API Vulkan
6 апреля 2019 года
Опубликован выпуск прослойки DXVK 1.1, предоставляющей реализацию DXGI (DirectX Graphics Infrastructure), Direct3D 10 и Direct3D 11, работающую через трансляцию вызовов в API Vulkan. Для использования DXVK требуется наличие драйверов с поддержкой API Vulkan, таких как AMD RADV 19.1-git, AMDGPU PRO 18.50+, NVIDIA 418.49.04, Intel ANV 19.1-git и AMDVLK.
DXVK может применяться для запуска 3D-приложений и игр в Linux при помощи Wine, выступая в качестве более высокопроизводительной альтернативы встроенной в Wine реализации Direct3D 11, работающей поверх OpenGL. В некоторых играх производительность связки Wine+DXVK отличается от запуска в Windows всего на 10-20%, в то время как при использовании реализации Direct3D 11 на базе OpenGL производительность снижается более существенно. Ведётся работа по поставке DXVK как компонента wine-integration, поставляемого в форме отдельной Linux-библиотеки (libdxvk.so), которую напрямую можно использовать в Wine, без необходимости отдельной установки DXVK в форме Windows DLL.
Основные изменения в DXVK 1.1:
- Переработан интерфейс Querie, применяемый для получения информации из GPU. Переработка позволила поднять производительность различных игр, особенно построенных на базе движка Unreal Engine 4. Для достижения максимальной производительности требуется наличие в драйверах Vulkan расширения VK_EXT_host_query_reset, появившегося в ветке Mesa 19.1-git и драйвере NVIDIA 418.49.04, а также использования Wine 4.5 или Proton 4.2. В конфигурациях без поддержки расширения VK_EXT_host_query_reset производительность некоторых игр, таких как Quake Champions, может оказаться ниже, чем при использовании DXVK 1.0;
- Реализована начальная поддержка метода SetPredication, для работы которого требуется поддержка расширения VK_EXT_conditional_rendering;
- Добавлена поддержка размещения кода шейдеров в памяти в сжатом виде и исключено хранение лишних копий шейдеров, что позволило существенно снизить потребление памяти в играх с большим числом шейдеров и немного ускорить компиляцию шейдеров. Например, в играх Overwatch, Quake Champions и Dishonored 2 после применения оптимизации потребление памяти снизилось на несколько сотен мегабайт;
- В DLL обеспечено включение информации о версии DXVK;
- Добавлены незначительные оптимизации операций мультисэмплинга;
- Устранены крахи при использовании Windows-версии RenderDoc в wine;
- Решены проблемы с отрисовкой в играх Dark Souls Remastered и Grim Dawn на системах с GPU NVIDIA;
- На 5-10% увеличена производительность игры "Sekiro: Shadows Die Twice".
Дополнение: Выяснилось, что выпуск 1.1 содержит серьёзную регрессию, приводящую к зависаниям GPU, поэтому Philip Rebohle, автор и разработчик DXVK, отменил выпуск, не рекомендует использовать его и уже работает над обновлением с исправлением.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.