Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dlssg-to-fsr3 mod with Proton #7361

Open
2 tasks done
Zenzi0 opened this issue Dec 18, 2023 · 128 comments
Open
2 tasks done

dlssg-to-fsr3 mod with Proton #7361

Zenzi0 opened this issue Dec 18, 2023 · 128 comments
Labels
Feature Request New feature or request

Comments

@Zenzi0
Copy link

Zenzi0 commented Dec 18, 2023

Feature Request

I confirm:

  • that I haven't found another request for this feature.
  • that I have checked whether there are updates for my system available that
    contain this feature already.

Description

Is it possible to use this mod with Proton? It replaces Nvidia Frame Generation with FSR3 in games like Cyberpunk 2077, The Witcher 3 and others.
https://github.com/Nukem9/dlssg-to-fsr3/releases

Justification [optional]

Risks [optional]

References [optional]

@Zenzi0
Copy link
Author

Zenzi0 commented Dec 18, 2023

A RTX graphics card is required. From what I've read one needs to place both .dll files into the folder with the game's executable (make a backup of the original dbghelp.dll). In game one needs to disable V-Sync. Another comment here recommends to enable Hardware-Accelerated GPU Scheduling (in Windows). I don't know whether that is possible in Linux.
This could be a massive improvement for Nvidia graphics cards older then 40XX gpus.

Edit: They have since changed the installation instructions and the file names. Here are the instructions at the time of writing:
dlssg-to-fsr3 has been tested in Cyberpunk 2077 and The Witcher 3 only.

dlssg-to-fsr3 may be obtained from: https://github.com/Nukem9/dlssg-to-fsr3

================================
===== Install instructions =====

  1. Right click on "DisableNvidiaSignatureChecks.reg" and select "Merge". Click "Yes" when the dialog opens.

  2. Locate your game's installation directory. For Cyberpunk 2077, this would be the folder containing Cyberpunk2077.exe.

  3. Copy "dlssg_to_fsr3_amd_is_better.dll" and the new "nvngx.dll" to your game's installation directory.

  4. Done. Launch the game. You'll see a message box on startup.

================================
==== Uninstall instructions ====

  1. Right click on "RestoreNvidiaSignatureChecks.reg" and select "Merge". Click "Yes" when the dialog opens.

  2. Delete "dlssg_to_fsr3_amd_is_better.dll" and "nvngx.dll" in your game's installation directory.

@kisak-valve kisak-valve added the Feature Request New feature or request label Dec 18, 2023
@Saancreed
Copy link
Contributor

Saancreed commented Dec 20, 2023

Wine currently does not support the APIs Streamline uses to check if Hardware Accelerated GPU Scheduling is enabled. I have a hack for this here which should apply to Wine 9.0-rc2 and some flavors of it.

Warning though, some assembly is required; you will need to compile your own Wine to use this (don't forget to run tools/make_specfiles before building, otherwise linking will fail). It seems to be working for me in Cyberpunk 2077 (you will need to export WINEHAGS=1 environment variable to enable it).

@Zenzi0
Copy link
Author

Zenzi0 commented Dec 20, 2023

Maybe it is time to learn how to build packages and include patches then.
But isn't something like this what a project like GloriousEggroll's proton-ge-custom would be willing to include? At least until a non-hacky alternative presents itself. I don't possess the knowledge to judge this accurately.

@Gravechapa
Copy link

Gravechapa commented Dec 21, 2023

Replying to #7361 (comment)

Thanks, it works. But I actually had to patch gpu detection to get dlss to work.

@WildNightFoxy
Copy link

Replying to #7361 (comment)

Thanks, it works. But I actually had to patch gpu detection to get dlss to work.

Could u say how to do it step by step :3 ?

@MrDuartePT
Copy link

MrDuartePT commented Dec 21, 2023

Replying to #7361 (comment)

Thanks, it works. But I actually had to patch gpu detection to get dlss to work.

Well I gonna try both patches on my machine and report back.
Just need to wait for the compile to end, the patches applied to wine-proton-9999 without problems:
image

@Saancreed
Copy link
Contributor

Don't forget to also apply the second patch from my gist, the hags-0002.patch one.

@MrDuartePT
Copy link

Well after adding the missing path and editing the ebuild to add tools/make_specfiles now should work.

@MrDuartePT
Copy link

MrDuartePT commented Dec 21, 2023

@Saancreed it work but create graphical corruption:
image

Edit: Turnning off dlss frame generation the bug disappear.

Pausing the game or staying still the color return to normal:
image

I gonna try removing some env to see if solves it:
image

Ok didnt solve. Can be a bug with wine since is a rc version

@FakeMichau
Copy link

This is the same result people got on Windows on GTX cards when using my nvapi-dummy (based on dxvk-nvapi) to spoof the GPU arch.

@FakeMichau
Copy link

@MrDuartePT Would you mind sharing your dxvk-nvapi log?

@MrDuartePT
Copy link

MrDuartePT commented Dec 21, 2023

@MrDuartePT Would you mind sharing your dxvk-nvapi log?

Well I only could generate the VKD3D logs lets see if this helps:
cyberpunk-vkd3d.txt

And I using a RTX 3070 Mobile (laptop) is very strange this is happening

@RyanKelly-DC
Copy link

A RTX graphics card is required. From what I've read one needs to place both .dll files into the folder with the game's executable (make a backup of the original dbghelp.dll). In game one needs to disable V-Sync. Another comment here recommends to enable Hardware-Accelerated GPU Scheduling (in Windows). I don't know whether that is possible in Linux. This could be a massive improvement for Nvidia graphics cards older then 40XX gpus.

Why is an Nvidia GPU required, when FSR is explicitly designed by AMD to be largely hardware agnostic?

@dlove67
Copy link

dlove67 commented Dec 21, 2023

Replying to #7361 (comment)

Because it uses DLSS, which is Nvidia only. It only uses the Frame gen component from FSR3.

@MrDuartePT
Copy link

MrDuartePT commented Dec 21, 2023

Replying to #7361 (comment)

Even if you can spoof wine to think you have a Nvidia card it probably will not work very well since DLSS use Tensor Cores. AMD card could use the computer core but I think it will be very slow.
Also FSR3 SDK is open source and work on every Directx12 it possible one day to update FSR hack to use FSR3. Or the games just implement FSR3.

@Saancreed
Copy link
Contributor

Replying to #7361 (comment)

I'm unable to reproduce this issue. I can notice ghosting in Cyberpunk 2077 with the mod installed (or maybe it's more like frames being presented out of order sometimes?) but colors seem to be fine. Here's a quick comparison, FG disabled vs FG enabled:

Expand for some screenshots…

Screenshot_20231222_025742
Screenshot_20231222_025759

No such issue in Path Tracing SDK sample either. I don't really have too many FG games outside Steam I could test this with and I'd rather avoid angering online games like Diablo IV by loading unsigned binaries that install detours in other code segments, sorry 😅

There might be a bug somewhere else in the stack that I somehow avoid on my own builds/hardware. But it's highly unlikely that my HAGS patch caused it.

@MrDuartePT
Copy link

MrDuartePT commented Dec 22, 2023

Replying to #7361 (comment)

Probably my problem was that I use the latest commit of wine instead of the tagged 9.0-rc2 version. I gonna recompile wine and report back.

MrDuartePT added a commit to MrDuartePT/mrduarte-ebuilds that referenced this issue Dec 22, 2023
MrDuartePT added a commit to MrDuartePT/mrduarte-ebuilds that referenced this issue Dec 22, 2023
@MrDuartePT
Copy link

Lol nice catch github :)

@MrDuartePT
Copy link

MrDuartePT commented Dec 22, 2023

It happening again even with the tagged 9.0-rc2 wine version:
image

I gonna try reinstall the mod again
Edit: With gamescope and even reinstalling the mod still happening
Very strange you can reproduce it @Saancreed
Probably because you have a 4000 series card?

@Saancreed
Copy link
Contributor

If anything, it's the version of vkd3d-proton used here that has the greatest chance of affecting this and not Wine. And for that I'm using 2.11.1 patched with Nvidia Reflex support (PR 1739 but rebased to latest vkd3d-proton and Vulkan-Headers), my own patches adding support for Opacity Micromaps and pull request 1806 (because I've heard it needs some testing).

But this is strange enough that I feel like someone would need to point NSight/Renderdoc at this thing to figure it out.

@MrDuartePT
Copy link

MrDuartePT commented Dec 22, 2023

If anything, it's the version of vkd3d-proton used here that has the greatest chance of affecting this and not Wine. And for that I'm using 2.11.1 patched with Nvidia Reflex support (PR 1739 but rebased to latest vkd3d-proton and Vulkan-Headers), my own patches adding support for Opacity Micromaps and pull request 1806 (because I've heard it needs some testing).

But this is strange enough that I feel like someone would need to point NSight/Renderdoc at this thing to figure it out.

I can try that version of vkd3d-proton and see if solve it. You would mind sharing your patches and the NVIDIA reflex rebase one.
Since vkd3d-proton 2.11.1 is avaiable as gentoo ebuild I can just add the patch and rebuilding it.

edit: After testing vkd3d-proton withouth patches the problem remains.

@MrDuartePT
Copy link

MrDuartePT commented Dec 22, 2023

By the way one off my friend on gentoo also confirm it happen on The Witcher 3. Using the patched wine-staging 9.0-rc2.
But the fps is good.

@MrDuartePT
Copy link

MrDuartePT commented Dec 22, 2023

@Saancreed try the SDK and unfortunately need Nvidia Reflex to enable DLSS-G i will try to rebase the patches later

@Saancreed
Copy link
Contributor

You would mind sharing your patches and the NVIDIA reflex rebase one.

I can do that in a few hours from now, plus I'll attach the exact config I'm using to build my Wine (using wine-tkg-git).

@Saancreed
Copy link
Contributor

Saancreed commented Dec 22, 2023

Okay, so starting with Wine, I'm building wine-tkg-git using a config like this:

wine-tkg.conf

_NOCCACHE="true"
_NOINITIALPROMPT="true"
_LOCAL_PRESET="none"
_PKGNAME_OVERRIDE="none"

#_GCC_FLAGS+=" -march=x86-64-v3"
#_CROSS_FLAGS+=" -march=x86-64-v3" # problematic, needs a workaround for gcc bug this runs into, otherwise will break 32-bit applications

_user_deps+=" libgcrypt lib32-libgcrypt"
_user_deps+=" pcsclite lib32-pcsclite"
_user_deps+=" libdrm lib32-libdrm"
_user_deps+=" libxkbcommon lib32-libxkbcommon"
_user_deps+=" wayland lib32-wayland"
_user_makedeps+=" wayland-protocols"
_user_makedeps+=" winesync-header"
_staging_commit='#tag=v9.0-rc2'
_use_fastsync="true"
_use_vkd3dlib="true"
_proton_fs_hack="false"
_win10_default="true"
_protonify="true"
_proton_battleye_support="true"
_proton_eac_support="true"
_user_patches_no_confirm="true"
_hotfixes_no_confirm="false"
_allow_server_rt_prio="true"
_allow_wine_net_raw="true"

Of all these, probably the only only relevant settings are using the Staging (default) and Protonify patches.

Then, using the userpatches system I'm reverting Wine commit 354a8bb1f4a65bdec052606f2799db9e2907b5b1 (for other reasons, most likely unrelated to this), adding f6d04e332309159de4dc3aab219aafa838a0a3c0 ("win32u: Don't deactivate the target thread when setting the foreground window." because I'm experimenting with winewayland), adding my HAGS patches, updating Ubisoft Connect hack to append --use-angle=vulkan instead as Proton does, extending AC Odyssey hack for Immortals Fenyx Rising as well, and hacking WS_EX_TOPMOST in winex11 to not be so annoying when combined with fullscreen windows on KWin. Only the HAGS patch is important here, I think. Notably, the "GPU detection" patch shouldn't be needed because something like that is already included in Protonify patchset.

Since this project targets Arch users, you might have a hard time using it on Gentoo. Either try included non-makepkg-build.sh script or manually borrow all the patches it applies to your own ebuild (good luck!).

For the remaining projects, my versions of patches are here.

Moving on to dxvk-nvapi, I'm applying PR 147 as is then my OMM patches hacked rebased on top of Reflex. They are probably of little use to you on Ampere but if you wish to try anyway, they are in the dxvk-nvapi-reflex-omm.diff file in the Gist linked above.

Then, when building vkd3d-proton, checkout tag 2.11.1, forcufully update Vulkan-Headers submodule at khronos/Vulkan-Headers to latest (v1.3.274 but any version equal to v1.3.271 or newer should work), apply my modified Reflex patch (vkd3d-proton-reflex.patch file from the Gist) and optionally apply OMM patches (vkd3d-proton-reflex-omm.diff file from the Gist) and/or PR 1806.

Finally, there is dxvk-reflex.patch file that can be used with DXVK if you wish to use Reflex in D3D11 titles, which again requires updating included Vulkan-Headers submodule at include/vulkan just like vkd3d-proton did.

Oh, and make sure you don't have LatencyFleX available because it has higher priority but it doesn't fully implement all APIs Reflex requires. At worst, use WINEDLLOVERRIDES=latencyflex_layer,latencyflex_wine= to disable loading it.

With all this (and Nvidia's nvngx.dll and _nvngx.dll installed into the prefix, and DXVK_ENABLE_NVAPI=1 in the environment) you should have DLSS Super Resolution and Reflex exposed and working correctly, and with WINEHAGS=1 plus the mod, Frame Generation should also become usable. Try this with Path Tracing SDK and let me know how it went.

MrDuartePT added a commit to MrDuartePT/mrduarte-ebuilds that referenced this issue Dec 22, 2023
@Saancreed
Copy link
Contributor

This week's Wine commits moved some things around, here's a new diff that should be compatible with latest revisions: hags.diff

@salihmarangoz
Copy link

Is anyone able to build it for Ubuntu?

@Milor123
Copy link

Milor123 commented Apr 16, 2024

I get 0 to 1 fps while keep activated the frame generation in Horizon Forbiddest west, using the https://github.com/FakeMichau/Proton-LFX2, when i disabled it on game, then i get my normal fps (75).

dxvk-2.3.1
vkd3d-proton-2.12
NVAPI v0.7.0
__GL_MaxFramesAllowed=3
__GL_THREADED_OPTIMIZATIONS=0
DXVK_ENABLE_NVAPI=1
VKD3D_CONFIG=dxr

I am in RTX 4070 propietary drivers in manjaro and I5 13500
I try deleting the glcache and vkd3d caches but the result is the same, I try use other wine versions but no working, i get crashes or stuck. (proton_tkg_9.3.r7.g21b92f96 of @gilvbp dont work for me in this game)

What should i do guys?

[14:38:17] [info] NVSDK_NGX_D3D12_Init_Ext
[14:38:17] [info] Hardware accelerated GPU scheduling is enabled on this adapter.
[14:38:17] [info] NVSDK_NGX_D3D12_PopulateParameters_Impl
[14:38:55] [info] NVSDK_NGX_D3D12_CreateFeature
[14:38:55] [info] NVSDK_NGX_D3D12_CreateFeature: Succeeded.
[14:39:06] [info] NVSDK_NGX_D3D12_ReleaseFeature
[14:46:09] [info] NVSDK_NGX_D3D12_Shutdown

I am using dlssg-to-fsr3-0.90-738-0-90-1704864090

@Milor123
Copy link

@gilvbp I am trying build a proton version using your script but

i get a error:

....
....
 -> GE patches...
 -> Applying assettocorsa-hud.patch 
 -> Applying killer-instinct-winevulkan_fix-80.patch 
 -> Applying hotfix-guild_wars_2.patch 
 -> Applying proton-fsr-90.mypatch 
 -> ######################################################
 -> 
 -> Applying your own plain-wine patch /home/noe/clonados/wine-tkg-git/wine-tkg-git/wine-hags-spoof.mypatch
 -> 
 -> ######################################################
 ==> ERROR: Patch application has failed. The error was logged to /home/noe/clonados/wine-tkg-git/wine-tkg-git/prepare.log for your convenience.
 -> Removed BIG_UGLY_FROGMINER - Ribbit
 -> Removed Proton-tkg token - Valve Ribbit
 -> exit cleanup done

This is the log: prepare.log
I am trying do ./proton-tkg.sh from wine-tkg-git/proton-tkg/

@gilvbp
Copy link

gilvbp commented Apr 16, 2024

@Milor123

Apparently this needs a new patch for the new version of wine (9.6)

@SheMelody
Copy link

SheMelody commented Apr 17, 2024

Replying to #7361 (comment)

I'm sorry if I sound extremely skeptical, but I don't believe that this actually works for anybody. I have tried two of your builds plus I have tried to compile proton by myself with the HAGS patch, and frame generation is still greyed out in all games. I have wasted over 4 hours of my life compiling a lot of Proton versions, all eventually to succeed, with the patch successfully being built inside. Log simply says "Hardware accelerated GPU scheduling is disabled on this adapter." and there is no way to make it say otherwise, it doesn't matter on which computer I try this, be it NVIDIA GPU or AMD GPU, this just doesn't work. Is this actually for real or are all the people faking this to be actually working on Proton?

@Milor123
Copy link

Milor123 commented Apr 17, 2024

Replying to #7361 (comment)

PROBLEM SOLVED

I've changed of lutris to STEAM (in my case add the game as non-steam game using steam tinker launch) or use HEROIC launcher, using Proton-LFX2 and FG works very nice in my Horizon Forbidden west, maybe lutris bugged my nvidia reflex

@Milor123
Copy link

Milor123 commented Apr 17, 2024

Replying to #7361 (comment)

I think I understand you, I also felt like this frustrated, but I must mention that I am already adapted to this, they are the things in Linux, with the games, with the work, however, Hahaha.

Today I managed to work for my game.
What play are trying to run? Notice that it is not in Lutris (Lutris was buying me my FG)
Check for the discord of DLSS2FSR, here is a linux thread chat.

@SheMelody
Copy link

SheMelody commented Apr 17, 2024

Replying to #7361 (comment)

I'm trying to run Cyberpunk 2077, I'm using Arch Linux, I've tried both premade proton tkg builds above and also compiling by myself on multiple proton source versions + adapting the code by myself to make it compile. There has been no way to make it work. It simply says "Hardware accelerated GPU scheduling is disabled on this adapter." in the logs and it's greyed out. I've tried on all my systems to no avail. I've never ever seen such a huge issue with these codes, yet here we are. I'm skeptical because I've been trying for hours and nothing works.

@Milor123
Copy link

Milor123 commented Apr 17, 2024

Replying to #7361 (comment)

Jumm write in my tl group and surely could check your case https://t.me/wow_vulkan_support

@SheMelody
Copy link

SheMelody commented Apr 18, 2024

Replying to #7361 (comment)

I don't want to bother you, There's this friend of mine who is extremely knowledgeable with Wine's source code especially, I'll ask her to test this first, if it works for her I'll let her figure this thing out. If it doesn't, well, guess I'll either try to join your group or simply wait for this to ship officially (despite my skepticism).

Edit: Doesn't work for her either. She says the mod that converts DLSSG to FSR3 is at fault and broken rather than wine/proton. Honestly, I can't be bothered with broken code in general so I'll just leave it there and let it be until somebody ports this "officially".

Moreover, random rant here, but there's a very specific reason why I use Arch Linux instead of other broken distros: I want things to just work and not waste 4 hours of my time like this very thing did. The fact that somebody even managed (if true at all) to make this thing work anywhere surprises me to the point that I'd establish a golden monument in their honor.

@Saancreed
Copy link
Contributor

The mod might not be perfect, sure, but it (probably) shouldn't affect whether Streamline (or dxvk-remix) detect HAGS as enabled or not. That said, all my prototyping and testing was done on wine-tkg builds and not proton-tkg so

  • Can you share the full Proton log perhaps?
  • Can you rebuild proton-tkg but with some FIXME("HAGS enabled: %u\n", (unsigned int)d3dkmt_wddm_2_7_caps->HwSchEnabled); added just before break; in NtGdiDdDDIQueryAdapterInfo to see what is actually returned to the game when it does the HAGS check, just in case?
  • Can you try one of your Proton builds with something like Portal Prelude RTX but without the mod (assuming that you have Ada GPU)?

@SheMelody
Copy link

SheMelody commented Apr 18, 2024

Replying to #7361 (comment)

  • So this implicitily means that this wasn't really tested on any proton build.
  • Didn't have PROTON_LOG=1 when I tested with patched proton + mod, I might do it later.
  • As in rebuilding, might do it later as well, depends on my mood.
  • I quickly tested Portal Prelude RTX with HAGS patched Proton on a RTX 4070 SUPER, without the mod, and I can enable NVIDIA Reflex, but there's no way to use Frame Generation. Although, what was the point of testing Prelude? Its Frame Generation implementation is known to not even work and just decreases your framerate.

@SheMelody
Copy link

Upon a complete system upgrade and completely erasing and reinstalling Steam (including compatdata files) it seems to work now, but the game lags like hell and mangohud says I'm getting 0 fps.

Video for proof:
https://cdn.discordapp.com/attachments/737284176537059439/1230477117829943317/DLSSG_to_FSR3_Arch_Linux.mp4?ex=6633761e&is=6621011e&hm=ab5b4028920467ecadfdc718380c1826c9b9dd4581a431118cd1199108319b4c&

Sorry for using Discord for sharing, but despite encoding it pretty well it's still too big.

@Milor123
Copy link

Milor123 commented Apr 18, 2024

Replying to #7361 (comment)

Ohh i was exactly the same problem in Horizon Forbidden west, the solution for my case was change from Lutris to Steam as launcher, or Heroic. (It surely could be a NVIDIA reflex problem)

What launcher is your using actually and with what ENV?
you need it PROTON_ENABLE_NVAPI=1 DXVK_ENABLE_NVAPI=1 use both

Try use this wine build:
https://buzzheavier.com/f/GLcaewYMoAA= (it get this from a Discord channel)

@SheMelody
Copy link

SheMelody commented Apr 18, 2024

Replying to #7361 (comment)

Seems to work just fine with the build you have just posted. Thank you. Any other build causes the game to get 0 fps in mangohud and lag badly.

Now I guess they just need to figure out why some builds get that laggy.

@Saancreed
Copy link
Contributor

Saancreed commented Apr 18, 2024

I quickly tested Portal Prelude RTX with HAGS patched Proton on a RTX 4070 SUPER, without the mod, and I can enable NVIDIA Reflex, but there's no way to use Frame Generation. Although, what was the point of testing Prelude? Its Frame Generation implementation is known to not even work and just decreases your framerate.

Then this is super weird because Reflex should be the one that doesn't work (support for it was never implemented in Proton!) while Frame Generation would start working once you borrow nvofapi64.dll from Windows driver and drop it into the game's prefix, in drive_c/windows/system32.

And yes, this is exactly the opposite of what we currently have with D3D titles (where Reflex works and FG does not).

Now I guess they just need to figure out why some builds get that laggy.

Assuming that it's indeed VK_NV_ll2 used under the hood there and not LFX2, my guess would be vkd3d-proton panicking and recreating the swapchain every frame because present IDs provided by Reflex are invalid games are attemping to present twice with the same present ID which is illegal. You should see a lot of messages like Got 3 swapchain images. in the Proton log while this is happening and on my side I worked around it by applying PR 1951 to vkd3d-proton (but with stride set to 65 to workaround yet another issue, this time related to latency reports).

@gilvbp
Copy link

gilvbp commented Apr 18, 2024

Replying to #7361 (comment)

Seems to work just fine with the build you have just posted. Thank you. Any other build causes the game to get 0 fps in mangohud and lag badly.

Now I guess they just need to figure out why some builds get that laggy.

I think it's a driver issue or a recent cyberpunk update, I had just noticed that with last nvidia driver (550.76). Now I'm getting 0 fps, extreme lag even at the startup and throughout the game. It was all good with 9.3 build

@SheMelody
Copy link

SheMelody commented Apr 18, 2024

I want to say that, yes, I could enable Reflex in Portal: Prelude RTX, but I didn't really specify that I think it still didn't work. Latency was quite bad, and when I subsequently double checked in Windows, it seems like it's snappier. Still, when I use Reflex in Cyberpunk 2077 in both Windows and Linux I get roughly the same result with input latency. I think it's safe to say that Reflex, while showing up for me in Linux in Prelude, I think it doesn't really do anything.

For the 0 fps lag, you can try the build above (thanks @Milor123) or download a release from this project, they both seem to work. For the 2nd one, you need to also copy _nvngx.dll to prefix's system32 folder, you can find that file in the NVIDIA driver package (or, if already installed in Windows, you can reach system32\driverstore\filerepository\nv_disp...something... directory and grab it from there).

@SheMelody
Copy link

Just a small follow up. I've played around with it and it seems to work perfectly fine in all scenarios. Anyway, I have always been using steam-native-runtime, which is basically Steam with system libraries (instead of Steam's runtime). I opened the regular one by mistake this morning and I noticed that games using frame generation were microstuttering quite a lot and, when I switched back to native, the problem went away. I believe this was worth mentioning, although I don't know if it's case-specific, here are my specs for reference: i7-14700K, 32 GB of RAM at 8000 MHz and 4070 SUPER with proprietary drivers + nvidia-tweaks from AUR (which is basically fbdev + modesetting and a few more tweaks).

@Milor123
Copy link

Just a small follow up. I've played around with it and it seems to work perfectly fine in all scenarios. Anyway, I have always been using steam-native-runtime, which is basically Steam with system libraries (instead of Steam's runtime). I opened the regular one by mistake this morning and I noticed that games using frame generation were microstuttering quite a lot and, when I switched back to native, the problem went away. I believe this was worth mentioning, although I don't know if it's case-specific, here are my specs for reference: i7-14700K, 32 GB of RAM at 8000 MHz and 4070 SUPER with proprietary drivers + nvidia-tweaks from AUR (which is basically fbdev + modesetting and a few more tweaks).

And how translate it to other launcher like Heroic launcher or lutris? Should i do ln -s ? how?

@SheMelody
Copy link

SheMelody commented Apr 19, 2024

Replying to #7361 (comment)

When I use external software, I call proton manually to start it up. You need to set all the environment variables, such as STEAM_COMPAT_DATA_PATH which is the path of the Proton compatdata folder that you want to create. You can find the other env variables in their github probably, I have them saved in the environment but I'm on Windows right now so I can't check. Then you call the proton executable with arguments.

@SheMelody
Copy link

SheMelody commented Apr 25, 2024

I have found out why this didn't work for me earlier. There seems to be an issue regarding prefix upgrade when you switch different prefixes. This really depends on which prefix you're upgrading from and which prefix you're upgrading to. It seems like Steam just leaves some files behind from the older prefix. Instead of switching compatibility tools, I've found out that deleting the game's prefix entirely and creating it from scratch fixes the problem. If you need to backup your saves, do so before doing this.

@nowheel
Copy link

nowheel commented May 22, 2024

Cyberpunk 2077 visual error with :

  • rtx on
  • rtx reconstruction
  • frame generator
  • fsr3 mod
  • proton9lfx2
  • Popos linux
  • nvidia-driver-550
  • nvidia rtx 20080 super

steam launch option:
WINEDLLOVERRIDES="winmm,version=n,b" PROTON_ENABLE_NVAPI=1 DXVK_ENABLE_NVAPI=1 WINEHAGS=1 gamemoderun mangohud %command% --launcher-skip --intro-skip -skipStartScreen

video link:
https://youtu.be/CzKGF-9O1VU

@Berny23
Copy link

Berny23 commented May 22, 2024

I'm now getting bad performance (50–75 FPS) regardless of Ray Tracing on/off and any DLSS quality.
I also get unusable 0 FPS with the FSR3 mod and frame generation on with the wine 9 build linked in this issue.

GPU: RTX 4090
CPU: Ryzen 9 5900X
Distro: Arch Linux
Driver: the new 555.42.02

@SheMelody
Copy link

SheMelody commented Jun 16, 2024

Update on this. DLSS Frame Generation just causes a black screen now after the latest Steam and Proton-LFX2 updates. Despite my best efforts, I couldn't get this to work anymore.

Edit: I have fixed it. I noticed that _nvngx.dll kept increasing in size every time the game loaded. What I did is replacing _nvngx.dll after starting the game, and it completely fixed the issue. I wonder why this is happening, further investigation is needed to understand this, but at the meantime I'll just accept this as a workaround.

@SheMelody
Copy link

Another update on this.
It now causes intermittent freezing after the latest Proton updates.

@SplinterSword
Copy link

Hello I am new to this and linux in general and wanted this mode to work. I don't understand anything and I was hoping that someone can explain to me what i need to do.

@gilvbp
Copy link

gilvbp commented Oct 9, 2024

Hello I am new to this and linux in general and wanted this mode to work. I don't understand anything and I was hoping that someone can explain to me what i need to do.

Do you use Discord? We can help you at https://discord.gg/linuxgamingdev

@SplinterSword
Copy link

Thank you !!! I will join the discord server and ask there

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Request New feature or request
Projects
None yet
Development

No branches or pull requests