emoose / DLSSTweaks

Tweak DLL for NVIDIA DLSS, force DLAA on DLSS-supported titles, tweak scaling ratios & DLSS 3.1 presets, override DLSS versions without overwriting game files.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DLSSTweaks conflicts with Ray Reconstruction in Cyberpunk 2.0

Austinzveare opened this issue · comments

I couldn't get RR to enable when running Tweaks but removed the files and got it working after, this is even when adding the new "D" DLL to load from another location like I do with the regular and "G" DLL. I thought I'd bring this to your attention since this is the first use of RR and would like to get it working with Tweaks.

With regards to actually image quality, Cyberpunk looks very bad with RR enabled at 720p internal resolution and even 1080p, giving it a very painterly effect similar to the way DLSS 1.0 looked.

With regards to actually image quality, Cyberpunk looks very bad with RR enabled at 720p internal resolution and even 1080p, giving it a very painterly effect similar to the way DLSS 1.0 looked.

Yeah, I agree. It's definitely less noisy, but that oil painting and oversharpened look can stand out. I was originally planning on using ultra performance at 1440p, but holy shit does it look awful.

But if you haven't noticed, the regular denoising (RR off) also improved a fuck ton. Fences don't shimmer that much anymore for example.

Yes, Fences are much better, along with some other things I expected to be cleaned up. I just don’t know if the painterly effect is intentional or if there’s something wrong, because it was not this obvious in promotional material.

Also, dlss tweaks seems to break the denoising for pathracing (without RR) if you change the quality setting once after the initial game load.
hSmGcFe

You need to restart the game to fix it.

Hmm, haven't been able to reproduce these issues yet, are you both using the latest 0.200.7-beta4 from #85 (comment)?

What method did you use to load DLSSTweaks btw? I didn't have any luck getting it to work with nvngx.dll yet, so renamed it to dxgi.dll, the tweaked scale changes seemed to apply fine, also tried changing preset too but not sure if it had any effect, I didn't get any broken denoising with it though, and RR seemed to still be active.

Could be worth switching nvngx_dlss to the 3.5 ver too, I only tried it with that so far. (E: tried the 3.1.1 it came with and also worked fine for me)

E: I posted a pack at https://www.nexusmods.com/cyberpunk2077/mods/7415 which /should/ work with RR, but my sample size for that is 1 right now, would appreciate hearing from anyone that tries it!

I also have the same issues involving dlss tweaks, ray reconstruction is grayed out when I add tweaks, but when I remove it, the denoisers break when pathtracing is active, so I need to remove dlss tweaks all together in order to make ray reconstruction active again, unfortunately because of this the default dlss file that Cyberpunk uses is 3.1 which is a version that has a bad preset used, so there's ghosting on it, so in the meantime I'm using dlss 2.5.1 to eliminate ghosting from the super resolution side. If it helps I'm using the nvngx.dll method and using your latest release.

I had those problems with 0.200.7-beta4 and the 3.5 dev dll.

But changing nvngx.dll to dxgi.dll fixed both problems. Changing the quality level doesn't fuck up the denoiser anymore, and it lets me enable RR now. Scale and preset changes also work fine.

I had those problems with 0.200.7-beta4 and the 3.5 dev dll.

But changing nvngx.dll to dxgi.dll fixed both problems. Changing the quality level doesn't fuck up the denoiser anymore, and it lets me enable RR now. Scale and preset changes also work fine.

This worked, but unfortunately because of this fix, i can't use Reshade with DLSSTweaks so it looks a tad blurry for my taste, so I just decided to remove DLSSTweaks from CP2077 and use DLSS 2.5.1 and use reshade that way, at least 2.5.1 uses good presets.

Might have found what stopped nvngx.dll wrapper from working, seems SL tries calling some extra funcs which weren't included in the drivers nvngx.dll, but were inside _nvngx.dll instead, pretty weird that they have two DLLs that include these, just had to add wrappers for those extra funcs & call into _nvngx instead.

Here's a build which should address it & fix a crash with module version fetching which was reported, RR should hopefully work fine with the DLL as nvngx.dll now:

DLSSTweaks_0.200.8-beta1a.zip

@doktorsleepelss could you check if this works for you? I never had the issue with denoiser breaking, hopefully this could help with that too.

@VirulentMan if it's conflicting with reshade the dxgi.dll can be renamed to some other names too, dlsstweaks.ini has a list of some, I think winmm.dll should work with it, might change it to that in the CP2077 releases.
(or the 0.200.8-beta1 above should work as nvngx.dll instead)

Might have found what stopped nvngx.dll wrapper from working, seems SL tries calling some extra funcs which weren't included in the drivers nvngx.dll, but were inside _nvngx.dll instead, pretty weird that they have two DLLs that include these, just had to add wrappers for those extra funcs & call into _nvngx instead.

Here's a build which should address it & fix a crash with module version fetching which was reported, RR should hopefully work fine with the DLL as nvngx.dll now:

DLSSTweaks_0.200.8-beta1a.zip

@doktorsleepelss could you check if this works for you? I never had the issue with denoiser breaking, hopefully this could help with that too.

@VirulentMan if it's conflicting with reshade the dxgi.dll can be renamed to some other names too, dlsstweaks.ini has a list of some, I think winmm.dll should work with it, might change it to that in the CP2077 releases. (or the 0.200.8-beta1 above should work as nvngx.dll instead)

I changed the dxgi.dll to winmm.dll and it's working as intended with reshade as well. Thank you very much.

@doktorsleepelss could you check if this works for you? I never had the issue with denoiser breaking, hopefully this could help with that too.

Works fine now.

I wonder if there might be some adjustable sharpness value specific to RR. Thought it was weird that they included a sharpness slider in this unreal 3.5 demo.

https://www.youtube.com/watch?v=cbKqp32ODDw

I'm hoping there's a dev version that lets you adjust it because it looks over sharpened in cyberpunk. Any chance there's something hidden in the dll that can be potentially adjusted with dlss tweaks?

Haven't really found anything that interesting in DLSSD's settings sadly, but did notice that DLSS sharpening does actually have some chance of being enabled, normally in 2.5.1+ sharpening is disabled after game requests it, but the code for sharpening does all still seem present, they just added some code that forces sharpening flag to be removed first.

There's some check just before the part that removes it which would allow the flag to remain though - don't know what condition it checks for yet, I think it's something based on appID passed to DLSS but not totally sure.

Here's the code that removes the flag, you can see it's only removed when v27 == 2, the sharpening flag is actually forced on if v27 == 1:

image

AFAIK v27 comes from something looked up from the appID, not sure what yet though, guess it means they can flag certain games to always enable sharpening, while others probably default to 2 to remove sharpening.

I need to redownload game to try testing more with it, if it does have that flag enabled maybe the OverrideSharpening INI setting could have some effect there, or maybe OverrideAppId would let it treat game as normal app and disable it.

E: hm, there's also default sharpening set inside the Cyberpunk2077 NvProfile too, could be worth toying with:
image

I need to redownload game to try testing more with it, if it does have that flag enabled maybe the OverrideSharpening INI setting could have some effect there, or maybe OverrideAppId would let it treat game as normal app and disable it.

Unless there's something else you need to code, I didn't see any difference in sharpening when I tried this.

E: hm, there's also default sharpening set inside the Cyberpunk2077 NvProfile too, could be worth toying with:

I took screenshots with with the default on and off several times, and I could not see any differences. It wasn't until I started messing with the sharpen values did it do something. Like I put it at 59, and hit apply. Then I put it to 60, and hit apply. Only then did I see the sharpening show up in game. So the fact that it's on by default doesn't seem to matter for whatever reason.

Hopefully someone can find out more about it. If there is some forced sharpening we don't know about yet, there better be a way to disable it. RR makes some things weirdly sharpened, in a way that shouldn't be.

It wasn't until I started messing with the sharpen values did it do something. Like I put it at 59, and hit apply. Then I put it to 60, and hit apply. Only then did I see the sharpening show up in game. So the fact that it's on by default doesn't seem to matter for whatever reason.

Ah good catch, it looks like they did set the sharpen values but don't actually set SHARPEN_ENABLE for them to take effect, so it only activates if you change it in NVCP first, odd.

Unless there's something else you need to code, I didn't see any difference in sharpening when I tried this.

Darn, also didn't seem to have any effect with Chaos Vantage neither, guess it probably is going through the v27 == 2 path then.

Not sure where else sharpening could be coming from, maybe game is using NIS at some point? Once CyberEngineTweaks is fully updated the settings dumper it includes might be able to let us mess with stuff for that.

E: apparently game engine itself includes some kind of sharpening too, there's mods on nexus that can remove it, wonder if that could help improve RR at all.

Hopefully someone can find out more about it. If there is some forced sharpening we don't know about yet, there better be a way to disable it.

The unreal demo might be able to tell us more, haven't found any downloads for it yet though, hope they're planning on releasing it eventually.