非英伟达显卡在仙剑7 开启DX12和DLSS且不启动光追的方法

仙剑7 这个游戏有个非常神奇的特性:开启DLSS之后依然运行在DX11模式。但是开启了光追之后就会运行在DX12模式。

在AppData\Local\Pal7\Saved\Config\WindowsNoEditor中的GameUserSettings.ini配置文件中,其实是可以直接设置光追和DLSS的级别的,有利于非NVIDIA显卡启动dlss和光追。
bNVRTX=1
bNVDLSS=2
这样设置之后,会自动进入DX12模式,因为微软光追API是DX12独占的。

这样就带来了一个非常大的问题,仙剑7 开光追之后性能极差,而且低和中特效的光追效果也比较差,网上有评测发现中低光追都没有水面倒影。

所以,其实仙剑7开启中低光追的意义非常小,跑不动(在4K屏幕下)还效果差,开了干嘛呢。

这时候你可能有点奇怪了,我到底想做什么?

其实是这样的。现在的Intel显卡普遍是搭载了光追核心的,既然性能差就关闭吧。如果你是用的1080P的屏幕可以试试开启光追 ,4K屏幕基本别想。

而且Intel显卡是面向Dx12设计的,DX11下会有奇怪的卡顿掉帧现象,DX12下就几乎没这种奇怪问题了。所以Intel显卡开启DX12是很有意义的。

同时Intel显卡还自带了矩阵加速单元加速XESS执行,将DLSS替换为X E S S可以显著提升性能。
另外,Intel显卡还能用XEFG几乎无门槛帧生成。

关键是AMD显卡也能用X E S S或者F S R2/3/4,也能用XEFG和FSRFG帧生成。

对于仙剑7这种只能用DLSS的游戏来说,使用DX12模式然后运行XESS+X E F G其实相当有必要。

将大力水手DLSS转换到F S R或者XESS/XEFG的关键,就是OptiScaler。我已经实测了可用。
请将OptiScaler安装在仙剑7-Binaries\Win64-Pal7-Win64-Shipping.exe文件所在的文件夹中。

经过我测试,如果bNVRTX=1启动游戏,光追会启动,帧生成也可以顺利启动,但是性能较差。如果现在立即将bNVRTX=0,那么下次启动仙剑7,会发现游戏依然是Dx12模式,但是光追已经关闭。
在相同的场景,我可以发现同样都是启动DX12的情况,开启光追之后的帧率只有没有开启光追时的1/2或更低。

但是,第三次启动仙剑7,又会发现仙剑自动进入了DX11模式 ,帧生成启动失败。

这种神奇的现象明显提示第二次仙剑启动的时候发生了别的事情导致状态变化。

经过我一番探索,我发现其实是游戏在第二次启动的时候,如果游戏发现光追关闭且目前处于DX12模式,那么会自动设置下次(也就是第三次)启动的时候使用DX11。其中的关键,就是程序会改写AppData\Local\Pal7\Saved\Config\WindowsNoEditor中的Engine.ini文件。

所以,请打开该文件,将下面的配置选项从:
DefaultGraphicsRHI=DefaultGraphicsRHI_DX11
改为
DefaultGraphicsRHI=DefaultGraphicsRHI_DX12

然后设置该文件属性为“只读”。不然,每次仙剑程序发现你没开光追但是启动了dx12,都会自动将这个值重新设置到DX11。

一句话总结:
请在Engine.ini中将默认DX API设置为12, 且同时在GameUserSettings.ini中,将DLSS设置非0的值,推荐设置为2,且将bNVRTX=0关闭光追。如果你是1080P屏幕,可以开启为1或者2或者3。

最后放置两张图,大家可以欣赏下。

图中可以发现我同时开启了XESS2.0和XEFG帧生成,不过最高帧率锁定在了60帧。非Intel显卡也可以这样设置,或者使用FSR和FSRFG。不过据我测试,XEFG帧生成可以自动搞定HUD/UI的重影问题,FSRFG则有文字重影的风险。

 

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.