[笔记] illusion 游戏使用 DXVK 修复卡顿 / DXVK 使用教程
我其实对 i 社游戏没有兴趣,我只是突然想起来然后想要折腾一下而已(确信)
PID - 117082695 - XilmO@夕末
问题原因
见此处 。
在“Windows 10 Anniversary Update”之后,DirectX 9.0c 的规格进行了变更。由于这次的规格变更,导致了“ジンコウガクエン2”(人工学园 2)等之前的产品在运行时可能会表现出运作缓慢的症状,使得产品运作变得非常沉重。
DXVK
一种性能较好 / 现代化的修复办法是用 DXVK 转译层将 DirectX 9 的 API 转译到 Vulkan 上运行。这种修复方式或许会比较适合现代系统与配置,如 Windows 11 + RTX 显卡的配置等。
DXVK 是一个久经考验的方案,并且在一部分(优化垃圾的)日厂游戏上(如 FF7RE 等)也会被一部分 mod 作为 Windows 上游戏优化方式的选择之一。
DXVK 恰好十分适合这样的老游戏场景。
在 https://github.com/doitsujin/dxvk/releases 中下载最新的 dxvk-x.x.x.tar.gz
压缩文件,然后打开。
由于 I 社游戏是 32 位,所以在 x32 文件夹下找到 d3d9.dll
与 dxgi.dll
,拖到游戏 exe 所在的目录下。同时,将原本存在的 d3dx9
前缀的 dll 文件 备份 后删除。
之后运行游戏即可修复问题。第一次进入游戏可能会有明显卡顿(2~3FPS),再一次重启游戏看是否恢复正常即可。如果你感觉帧率较低,这可能不是 dxvk 的问题,而是 illusion 本身的优化问题。你可以尝试将画面设置中的“物理演算精确度”改为正常来改善帧率问题。
除此以外你也可以尝试使用 DXVK 的异步着色器编译版本来优化你可能会遇见的其他丢帧问题:dxvk-gplasync。
如果你打算将 DXVK 用于较新的游戏,你可能需要注意以下几点:
- 较新的游戏可能会更优先使用 x64 版本的 dxvk。
- 由于各种游戏使用的 API 不一,一个方便的做法是直接将 4 个 dll 全部拖到游戏目录下即可。理论上你所需要的 dll 有两个,其中一个必须是
dxgi.dll
,其次是游戏使用的图形 API 对应的 dll 文件。 - 判断 dll 是否被加载的方法可以看 dll 在游戏启动后是否被占用(无法删除)或者用 MSI Afterburner 查看你的图形 API 是否变为了 Vulkan。
DXVK 一般来说不适合在 Windows 上日常使用,除非游戏实在太老或者优化实在太差(这两种情况一般是同时出现的)。
其它修复方案
你也可以在 这里 找到 d3d9.dll 的其它替换方案。只不过出于安全性 / 兼容性与解决方案可能过时的原因,可以优先尝试 DXVK 方法。
这里提供了一个来自 Pooo - 知乎 的替换范例文件(illusion 修复对策.7z)。有两个替换版本,你可能需要自己尝试哪个能够生效。
引用 / 扩展阅读
https://www.bilibili.com/read/cv21364599/
https://web.archive.org/web/20190216230054/http://www.illusion.jp/support/windows10.html
https://www.zhihu.com/question/338045403
https://steamcommunity.com/sharedfiles/filedetails/?id=2675744511
本文链接:https://pst.iorinn.moe/archives/illusion-fix.html
许可: https://pst.iorinn.moe/license.html若无特别说明,博客内的文章默认将采用 CC BY 4.0 许可协议 进行许可☆