cdozdil / OptiScaler

OptiScaler is middleware that enables various upscaling technologies in DLSS2-only games. It allows non-Nvidia users to use upscaling by applying DLSS2 inputs to XeSS, FSR2, or FSR3.
MIT License
514 stars 10 forks source link

FSR 3.1 not working in No Man's Sky #29

Open Cheesy1576 opened 2 months ago

Cheesy1576 commented 2 months ago

Can this problem be fixed on your side, or no? If yes, when can we expect a fix for this?

cdozdil commented 2 months ago

Hi,

It crashes at when I call methods from AMD's Vulkan dll, because of that I haven't tried finding the issue tbh. So I can't tell you if I can fix it or when for now.

cdozdil commented 2 months ago

Hi,

I think I have solved the No Man's Sky issue. Could you test this build?

nvngx.zip

Cheesy1576 commented 2 months ago

Absolutely, I will do this today in a few hours.

Cheesy1576 commented 2 months ago

I'm not sure if I installed it correctly. I followed ,,Install as non-nvngx" instruction and it doesn't work. I made a copy of nvngx_dlss.dll in the No Man's Sky\Binaries folder, I renamed that copy to nvngx.dll (i understand from this that the original nvngx_dlss.dll stays there and only a copy of this file have to be renamed), I moved the file you sent to that folder and renamed it to dxgi.dll, I moved nvngx.ini file from the latest OptiScaler release, in this file i changed default Vulcan upscaler to fsr31, Nvidia GPU spoofing for Vulkan and Nvidia extention spoofing for Vulkan to true. I assume that in game there was supposed to be an option to enable Nvidia DLSS (as FSR 3.1), but there is no such option. It does show however that I use RTX 4090.

Nygglatho commented 2 months ago

I tried to test it as well and had the same result. OptiScaler loads and creates a log file but that's all it does. OptiScaler.log

@Cheesy1576 You should get 2 new Anti-Aliasing options when it works. DLSS and DLAA.

cdozdil commented 2 months ago

For No Man's Sky with latest update you can use dxgi.dll approach. You need to add nvapi-dummy to same folder.

nvngx.ini should not be renamed and needs following settings:

; -------------------------------------------------------
[Spoofing]
; -------------------------------------------------------
; Enables Nvidia GPU spoofing for Vulkan
; true or false - Default (auto) is false
Vulkan=true

; Enables Nvidia extension spoofing for Vulkan
; true or false - Default (auto) is false
VulkanExtensionSpoofing=true

; -------------------------------------------------------
[NvApi]
; -------------------------------------------------------
; Override loading of nvapi64.dll 
; true or false - Default (auto) is false
OverrideNvapiDll=true

image

Nygglatho commented 2 months ago

I tried this earlier, just didn't mention it because I thought we weren't supposed to use the nvapi-dummy. Is this FakeMichau/nvapi-dummy the correct one? I tried it with that and my game looked this and froze after a few seconds. NMS_XuZvuRnxmD OptiScaler.log

Cheesy1576 commented 2 months ago

@Nygglatho I have the same result and it crashes my game

cdozdil commented 2 months ago

Ah we experienced same issue with RDNA2 cards. Any chance you both using RDNA2 cards?

My screenshot is from Vega APU, works with Nvidia too but some AMD GPUs are not happy after update :/

Nygglatho commented 2 months ago

I'm on RDNA3 (RX 7900 XTX)

cdozdil commented 2 months ago

Ah so RDNA3 affected too. I will check what has changed with this patch (I already know depth format is changed).

If I can find a solution will inform you guys. Thanks for checking 👍

Cheesy1576 commented 2 months ago

RX 6700 XT