Недавно выпуск новая версия реализации DXVK 1.10.1 в котором, среди прочего, были добавлены некоторые новшества и новые экспериментальные функции.
Для тех, кто еще не знает о DXVK, следует знать, что это такое один из инструментов, включенных в функцию Steam Play из Steam. Это фантастический инструмент, которыйe может конвертировать графические вызовы Microsoft DirectX 11 и DirectX 10 в Vulkan, графический API с открытым исходным кодом, совместимый с Linux. Чтобы использовать DXVK, помимо Wine и Vulkan, вам, очевидно, понадобится Vulkan-совместимый графический процессор.
Хотя DXVK в основном используется в Steam Play, это не единственное место, где пользователи Linux могут воспользоваться преимуществами этой фантастической технологии. Это также способствует реализация D3D11 на основе Vulkan для Linux и Wine, Что касается производительности и оптимизации при запуске игр Direct3D 11 в Wine, поскольку они также обеспечивают поддержку Direct3D9.
Основные новые возможности DXVK 1.10.1
В этой новой версии сначальная поддержка общих ресурсов текстур и API IDXGIResource. Чтобы организовать хранение метаданных текстур вместе с соответствующими дескрипторами общей памяти, требуются дополнительные исправления для Wine, которые в настоящее время доступны только в ветке Proton Experimental.
В настоящее время, реализация ограничена поддержкой совместного использования 2D-текстур для API D3D9 и D3D11.. Вызов IDXGIKeyedMutex не поддерживается, и в настоящее время нет возможности делиться ресурсами с приложениями, использующими D3D12 и Vulkan. Добавленные функции решили проблемы с воспроизведением видео в некоторых играх Koei Tecmo, таких как Nioh 2 и Atelier, и изменили рендеринг пользовательского интерфейса в Black Mesa.
Еще одно изменение, которое выделяется в этой новой версии, заключается в том, что добавлена переменная окружения DXVK_ENABLE_NVAPI чтобы отключить переопределение идентификатора поставщика (аналогично dxvk.nvapiHack=False), в дополнение к улучшенная генерация кода шейдера при использовании локальных массивов, что может ускорить некоторые игры D3D11 на системах с драйверами NVIDIA.
Из другие изменения которые выделяются:
- Добавлена оптимизация, потенциально повышающая производительность рендеринга изображений в формате DXGI_FORMAT_R11G11B10_FLOAT.
- Исправлены проблемы с загрузкой текстур при использовании D3D9.
- Для Assassin's Creed 3 и Black Flag параметр «d3d11.cachedDynamicResources=a» включен для решения проблем с производительностью.
- Настройка «d3d11.cachedDynamicResources=c» включена для Frostpunk, а «dxgi.maxFrameLatency=1» — для God of War.
- Исправлены проблемы с рендерингом в GTA: San Andreas и Rayman Origins.
В конце концов если вам интересно узнать об этом больше Об этом новом выпуске вы можете узнать подробности По следующей ссылке.
Как добавить поддержку DXVK в Linux?
DXVK можно использовать для запуска 3D-приложений и игр в Linux с помощью Wine, выступая в качестве более производительной альтернативы встроенной в Wine реализации Direct3D 11, работающей на OpenGL.
DXVK требует последней стабильной версии Wine бежать. Итак, если у вас это не установлено. Теперь нам нужно только загрузить последний стабильный пакет DXVK, который мы нашли. По следующей ссылке.
wget https://github.com/doitsujin/dxvk/releases/download/v1.10.1/dxvk-1.10.1.tar.gz
После загрузки мы собираемся распаковать только что полученный пакет, это можно сделать из среды рабочего стола или из самого терминала, выполнив следующую команду:
tar -xzvf dxvk-1.10.1.tar.gz
Затем мы получаем доступ к папке с:
cd dxvk-1.10.1
И выполняем команду sh, чтобы запускаем установочный скрипт:
sudo sh setup-dxvk.sh install
setup-dxvk.sh install --without-dxgi
При установке DXVK в приставку Wine. Преимущество заключается в том, что Wine vkd3d можно использовать для игр D3D12 и DXVK для игр D3D11.
Кроме того, новый сценарий позволяет устанавливать dll в виде символических ссылок, что упрощает обновление DXVK для получения дополнительных префиксов Wine (это можно сделать с помощью команды –symlink).
Каким вы будете видеть папку DXVK содержит две другие dll для 32 и 64 бит эти мы собираемся разместить их по следующим маршрутам.
Где "пользователь" вы замените его именем пользователя, которое вы используете в своем дистрибутиве Linux.
Для 64 бит вставляем их:
~/.wine/drive_c/windows/system32/
O
/home/”usuario”/.wine/drive_c/windows/system32/
И для 32 бит в:
~/.wine/drive_c/windows/syswow64
O
/home/”usuario”/.wine/drive_c/windows/system32/