DXVK 0.70 发布,支持 Direct3D 10

DXVK 是 Direct3D 11 的基于 Vulkan 的翻译层,几分钟前已更新至 0.70 版,带来了对 Direct3D 10 的支持。

DXVK 允许在 Linux 上使用 Wine 运行 Direct 3D 11,并在此版本中运行 Direct3D 10 游戏(和应用程序)。 它旨在为 D3D11(功能级别 11_0)和 D3D10(功能级别 10_1)提供支持。 缺少的功能包括预测(正在进行中)和流输出。

为了能够运行 Direct3D 10 (D3D10) 游戏,您需要本机
d3dcompiler_43.dll

可通过 winetricks 获得的文件(使用
winetricks d3dcompiler_43

安装它)。

孤岛危机 1 在 Linux 上使用 Vulkan 和 DXVK; 图片来源:DXVK GitHub

DXVK 中的新 D3D10 代码实现了大部分 Direct3D 10.1 核心 API 和着色器反射 API。

有一些
DXVK 不支持的 D3D10 功能
尽管:

  • 效果 API
  • D3D10 特定的文本过滤器和 DXGI_FORMAT_R1_UNORM 图像格式
  • D3D10 计数器当前未实现
  • D3D11 后端当前不支持流输出

DXVK 开发人员指出,使用 DXVK 中当前的 D3D10 实现,您应该能够运行像刺客信条 1(但游戏中没有 MSAA 选项)、孤岛危机 1 的 64 位 GOG 版本(在 Mesa 18.1 上)等游戏启用
RADV_DEBUG=nohiz

可能需要避免损坏的阴影; 该问题在 Mesa 18.2 中已修复)和 Just Cause 2(启用 SSAO 可能会导致游戏崩溃)。

他们说 Crysis 1 的 32 位 Steam 版本可能不起作用,尽管用户说 Steam 版本适用于他的情况。

DXVK 0.70 版还实现了 D3D11.1 ClearView 方法和 D3D11.1 扩展双指令。

DXVK 可以从 GitHub 下载,预编译的二进制文件在其发布页面上可用,但使用 Lutris 运行游戏并简单地设置你想要使用的 DXVK 版本更容易(大多数用户可能会使用它)这个应用程序. 您可以在此处阅读有关 Lutris 和 DXVK 的更多信息。