当前位置: 首页>>技术教程>>正文


使用DXVK在Linux上改善您的葡萄酒游戏

目的

将DXVK添加到现有的Wine前缀中,以提高性能。

发行版

本指南的重点是Ubuntu,但是该过程适用于任何发行版。

要求

具有root特权的有效Linux安装。

困难

简单

约定

  • -要求给出linux命令可以直接以root用户身份或通过使用root特权以root特权执行sudo命令
  • $-要求给出linux命令以普通非特权用户身份执行

介绍

葡萄酒游戏是一个移动的目标。一直如此。当您以为自己知道土地的状况时,就会出现新的事物并破坏一切。最新的曲线球以DXVK形式出现。

DXVK是一套替代品dll从DirectX 11转换为Vulkan的文件。尽管DXVK仍然很新,甚至还没有看到其1.0版本,但Wine游戏玩家正在用双脚跳起来。

由于DXVK将DX11代码移至Vulkan,因此直接解决了当今Wine游戏最大的问题,即与新形式的DirectX不兼容。大多数游戏都尽可能地远离DirextX 9,并在此过程中打破了Wine的可比性。 DXVK作为解决方案具有巨大的潜力。

安装Vulkan

在使用DXVK之前,需要Vulkan支持。这意味着不同的事情,具体取决于您的图形卡和驱动程序,但是有一些通用部分。首先安装它们。

$ sudo apt install libvulkan1 libvulkan-dev vulkan-utils



台面

如果您使用的是Mesa,与AMD或Intel一起使用的ether,那么最好使用绝对最新版本的Mesa。有一个很棒的PPA可以从Git for Ubuntu不断更新Mesa。

$ sudo add-apt-repository ppa:oibaf/graphics-drivers
$ sudo apt updat

升级一切。

$ sudo apt upgrade

现在,安装Mesa Vulkan驱动程序。

$ sudo apt install mesa-vulkan-drivers

在这里重新启动计算机是一个好主意,以确保您使用的是Vulkan的新版Mesa。

英伟达

NVIDIA专有驱动程序已经具有Vulkan支持,因此您不需要做任何其他事情。只要确保您的系统上有最新版本即可。如果您仍在从默认存储库运行驱动程序,请考虑添加图形PPA。

$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt update
$ sudo apt upgrade

PPA还提供了Vulkan软件包。也安装它。

$ sudo apt install vulkan


安装Lutris

您完全可以在没有Lutris的情况下运行DXVK,但是使用Wine可以使一切变得更加容易。考虑运行Lutris,而不是自己为独立的Wine配置争吵。 DXVK还可以在per-prefix的基础上工作,因此Lutris带来的分隔性也使其更适合此类情况。如果您需要帮助来设置Lutris,请查看我们的Lutris指南

安装游戏

选择一个要安装的游戏。 DirectX 11上运行的任何程序都是进行测试的理想选择。请记住,并不是所有游戏都可以通过DXVK更好地运行。这仍然是一个非常年轻的项目,并且尚未针对每种情况进行优化。本指南将遵循《守望先锋》。这是一个非常受欢迎的仅限DX11的游戏,它与Lutris配合良好。

转到游戏页面,然后单击图片幻灯片下方的”Install”按钮。这将开始安装Lutris。

让安装正常进行,并遵循Lutris给出的说明。暂时不用担心DXVK。安装完成后,退出游戏,或在出现提示时完全不启动游戏。

更新酒

如果您关注《守望先锋》,则可能需要更新Lutris使用的Wine版本。守望先锋脚本已经有一段时间没有更新了,仍然使用Wine 2.21。

单击”Runners”图标。这是左起的第二个。在出现的窗口中向下滚动到Wine。单击”Manage versions”按钮。选择最新版本的Wine Staging,然后等待其安装。完成后,关闭两个窗口。

Lutris Change Wine Version

Lutris Change Wine版本

右键单击游戏的横幅图像,然后选择Configure。选择Runner options标签。将Wine的版本更改为您刚刚下载的Staging的版本。



下载DXVK

您终于可以将DXVK纳入方程式了。前往项目的发布页面,然后下载最新的tarball。

在方便的地方打开压缩包的包装。 DXVK通过符号链接自行安装,因此您可以将单个文件夹保留在一个中央位置。

运行安装程序脚本

在DXVK文件夹中,您会发现另外两个文件夹,一个用于x32,另一个用于x64。你们两个都需要。先换成x32。

$ cd ~/Downloads/dxvk-0.50/x32

文件夹中有几件事。它有两个替换dll文件和安装程序脚本。该脚本放置了dllsystem32Wine前缀的名称,并为要在本地使用的每个名称创建一个替代。

DXVK Run Install Script

DXVK运行安装脚本

要运行脚本,请设置Wine前缀,然后运行它。

$ WINEPREFIX=~/Games/overwatch ./setup_dxvk.sh

在x64文件夹中执行相同的操作。它将在syswow64

测试一下

DXVK DLL Overrides

DXVK DLL覆盖

为确保脚本已运行,请再次右键单击您的游戏,然后选择Wine Configuration。这将带来一个典型的winecfg窗口。检查下Libraries标签。您应该看到的替代d3d11dxgi

像往常一样打开并运行游戏。一切仍然应该正常工作,但是现在,您应该注意到性能有所提高。同样,这里并不能完全保证结果,但是始终值得测试。

总结思想

您现在有了一个在Wine上运行DXVK的游戏。预计在接下来的几个月中DXVK将取得快速的进步和进步。这个年轻的项目前途光明,有一天可能会进入Wine主线。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/9824.html,未经允许,请勿转载。