D8VK, реализация Direct3D 8 для DXVK

Д8ВК

D8VK — это реализация Direct3D 8, которая позволяет запускать 3D-приложения в Linux с помощью Wine.

Несколько дней назад анонсирован выход первой стабильной версии проекта «D8VK 1.0», который предлагает Реализация графического API Direct3D 8 который работает за счет перевода вызовов API Vulkan и позволяет использовать Wine или Proton для запуска 3D-приложений и игр, разработанных для Windows, в Linux, которые связаны с API Direct3D 8.

Как многие из вас знают, в Linux у нас есть VKD3D-Proton для перевода Direct3D 12 в Vulkan, кроме того, у нас также есть Steam Play, который использует DXVK для реализации API Direct3D 9/10/11 поверх Vulkan, но для старого В реализации Direct3D 8 ничего конкретного не было.

Вот почему родился D8VK, который представляет собой реализацию старого Microsoft Direct3D 8 API поверх Vulkan для улучшения опыта старых игр.

D8VK 1.0 отмечен как первый релиз проекта, подходит для использования и протестирован в сотнях игр. По сравнению с проектами WineD3D и d3d8to9, использующими преобразование Direct3D 8 в OpenGL и Direct3D 9, проект D8VK демонстрирует лучшую производительность, стабильность и совместимость с играми.

Например, при тестировании на пакете 3DMark 2001 SE проект D8VK набрал 144660 баллов, комбинация d3d8to9 и dxvk — 118033, а WineD3D — 97134.

Запуск D8VK 1.0 представляет d3d8.dll(d3d9 статически связан), а также новый пользовательский пакетный процессор для определенных игр с неопределенным поведением.

В дополнение к этому также подчеркивается, что поддержка переопределения объявления вершинного шейдера для игр с неопределенным поведением и что буферы вершин теперь можно хранить в самоуправляемом пуле, чтобы повысить производительность и избежать проблем с порядком записи.

Также отмечается, что в MSVC реализована поддержка компиляции, а также поддержка запросов GetInfo и типов блоков состояния.

Других выделяющиеся изменения:

  • Правильные размеры описания поверхности в зависимости от формата
  • Разрешить сохранение текущей установки Proton
  • Бесчисленные игровые настройки, а также мелкие функции и настройки.
  • Исправлена ​​ошибка, из-за которой функция CreateTexture пыталась обернуть нулевую текстуру.
  • Исправлена ​​ошибка, из-за которой бэкбуферы не кэшировались и не ссылались на собственное устройство.
  • Исправлены текстуры, потоки и индексы, которые не очищались при перезагрузке.
  • Исправлено расположение Direct3DCreate8 в d3d8.def.
  • Исправлен счетчик ссылок для целей рендеринга, шаблонов глубины и текстур.
  • Исправлены шейдеры нулевых пикселей, которые не запоминались.
  • Исправлена ​​ошибка, из-за которой цели рендеринга и шаблоны глубины не кэшировались.
  • Исправлена ​​ошибка, если клиент пытался включить SWVP на аппаратном устройстве.
  • Исправлены устройства, не взламываемые
  • Исправлена ​​ошибка сегментации при выпуске устройства с привязанными текстурами.

Наконец, если вам интересно узнать об этом больше, вы можете ознакомиться с подробностями По следующей ссылке.

Вы должны знать, что код проекта написан на языке C++ и распространяется под лицензией Zlib. В качестве основы для разработки использовалась кодовая база проекта DXVK с реализацией Direct3D 9, 10 и 11 поверх Vulkan.

Как установить D8VK на Linux?

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

git clone https://github.com/AlpyneDreams/d8vk.git

Или, если вы предпочитаете загружать из своего браузера (вам просто нужно разархивировать файл и расположить себя в терминале внутри папки), вы можете сделать это, нажав по этой ссылке.

Сделали это, теперь мы собираемся войти в каталог с помощью:

cd d8vk

И приступаем к реализации d8vk в зависимости от обстоятельств. Чтобы реализовать это с помощью Wine, мы должны ввести следующее:

./setup_d3d8.sh install --no-proton

Или, если вы хотите реализовать это с помощью Proton, необходимо ввести следующую команду:

./setup_d3d8.sh install

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


Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.