We do often include affiliate links to earn us some pennies. See more here.

Two big bits of news for Steam Play Proton today with two new versions getting released so let's take a look and see exactly what's new for the Windows compatibility layer.

Firstly, NVIDIA announced back in August that DLSS would come to Proton in September for DirectX 11 / 12. Well, their date was a bit off there it seems but Valve / CodeWeavers managed to pull in DLSS support for at least DirectX 12 in Proton Experimental as of September 30. To enable it you need to set PROTON_ENABLE_NVAPI=1, which you can do as a Steam launch option for games like PROTON_ENABLE_NVAPI=1 %command% (right click -> properties -> launch options).

Additionally this Proton Experimental release also fixes crashes in Project Wingman, Satisfactory and other Unreal Engine 4 games using the Vulkan renderer.

On top of that Proton 6.3-7 is also officially out now which includes these improvements:

  • The following games are now playable:
    • Life is Strange: True Colors
    • Quake Champions (broken after a game update)
    • Divinity Original Sin 2 (broken after a game update)
    • eFootball PES 2021
    • EVERSLAUGHT VR
    • WRC 8, 9 and 10
  • Fix Logitech G920 mapping for F1 2020.
  • Fix Resident Evil Village display settings.
  • Improve Forza Horizon 4 windowing.
  • Update DXVK to v1.9.2.
  • Update vkd3d-proton to include the latest development work.

Details can be seen on the official changelog any time.

If you need to learn more about Proton be sure to check out our Beginner's Guide.

Article taken from GamingOnLinux.com.
38 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly checked on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. You can also follow my personal adventures on Bluesky.
See more from me
The comments on this article are closed.
All posts need to follow our rules. For users logged in: please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Guest readers can email us for any issues.
13 comments

Beamboom Oct 1, 2021
How do we know when to set PROTON_ENABLE_NVAPI=1? Or maybe rather, when should we not do it?
I mean, we all want a better performance when possible, and DLSS sounds like a good idea to enable by default?
RossBC Oct 1, 2021
How do we know when to set PROTON_ENABLE_NVAPI=1? Or maybe rather, when should we not do it?
I mean, we all want a better performance when possible, and DLSS sounds like a good idea to enable by default?

You can set it as default, it doesn't seem to have any affect on games that don't use DLSS.
Can add it to your user_settings.py without worry.

youed add it like this. "PROTON_ENABLE_NVAPI": "1",
For GE at least.
When available.

So for experimental should be under $HOME/.steam/steam/steamapps/common/Proton - Experimental/user_settings.sample.py
add above to it and rename to user_settings.py.
Be warned you may need to make that change each time experimental updates.

(example is with arch, directory structure may be different for your preferred OS)


Last edited by RossBC on 1 October 2021 at 10:55 am UTC
RossBC Oct 1, 2021
Tested with "Mortal Shell" works great
(Epic Version, through Steam)

Steam version: 'PROTON_ENABLE_NVAPI=1' (sic) is enough.

Non-Steam Game, running inside steam: To do so, you either need to edit it into the user_settings.py file or use "Steam Tinker Launch"


Last edited by RossBC on 1 October 2021 at 12:01 pm UTC
jens Oct 1, 2021
  • Supporter
How do we know when to set PROTON_ENABLE_NVAPI=1? Or maybe rather, when should we not do it?
I mean, we all want a better performance when possible, and DLSS sounds like a good idea to enable by default?

That switch does not just "enables" DLSS, but makes an alternative nvapi.dll/nvapi64.dll implementation visible to the game. NVAPI is NVIDIA's library for all kind of things, from display and power management to D3D9/11/12 extension methods. It is similar to AMD's AGS library but way bigger. That alternative implementation (DXVK-NVAPI) implements only a few methods (among others for supporting DLSS) of that huge API. Most games can cope with the fact that some (most) NVAPI methods are not implemented, but there are probably also games that don't handle this nicely and will just bail out.

Additionally, DXVK spoofs an AMD card by default (there is a DXVK configuration switch to disable this). For nvapi (and thus DLSS for D3D11), DXVK needs to report an NVIDIA card no longer as an AMD card but now as NVIDIA. Some games might choose a different path when seeing NVIDIA instead of AMD, this might make some edge cases visible, which aren't handled yet.

To answer your question, having NVAPI enabled all the time (esp. with AMD spoofing off in DXVK) is a bit more living on the edge, at least currently :)


Last edited by jens on 1 October 2021 at 12:44 pm UTC
RossBC Oct 1, 2021
MW5:Mercs works good, need to edit GameUserSettings.ini :- DLSSQuality=(assuming 0-3) put mine on 2
Can play with maximum everything and extreme weather, ash all the nice stuff.
Haven't tried it with ray tracing but that needs VKD3D_CONFIG=dxr to work .

I should really disable, the video card spoof, dlss might appear running me5 with vkd3d. will give it a shot anyway.


edit: aright DXVK_CONFIG_FILE="where ever you put your dxvk.conf file"
needs to have :- dxgi.nvapiHack = False
In it.

DLSS options will appear under the Display tab NOT the Graphics tab.


Last edited by RossBC on 1 October 2021 at 2:26 pm UTC
stickyparadigm Oct 1, 2021
Just to be clear, this still only works if you have a video card that supports it (RTX 20 or 30), right?
jens Oct 1, 2021
  • Supporter
Just to be clear, this still only works if you have a video card that supports it (RTX 20 or 30), right?

Yes correct.
DXVK-NVAPI mostly just forwards to DXVK/VkD3D-Proton, a bit of magic happens there, but the actual magic still happens in the CUDA kernel in the NVIDIA driver which, well, requires a recent NVIDIA card.


Last edited by jens on 1 October 2021 at 7:43 pm UTC
finaldest Oct 1, 2021
Does this benefit AMD cards in any way or is it Nvidia only????

I have been holding out for prices to drop in order to get a 30 series NVIDIA GPU however I have just pulled the trigger on a AMD Radeon RX 6800XT for a whopping £1100.00 because my GTX1070 GPU is dying and NVIDIA cards are just to expensive or not available.

I hope I don't regret buying as I plan to game at 4k and was relying on DLSS to enable that. I am concerned as I haven't used a Radeon card for 10 to 15 years so am unfamiliar with their feature set.

This may end up my last GPU and exit from PC Gaming if this price gouging continues.
RossBC Oct 1, 2021
Runs good with Cyberpunk 2077, it's now playable, with stable fps without weird hitching.
Get weird audio when shooting, might just be my setup, will give it a go with the old pulse audio work around.
aufkrawall Oct 2, 2021
For whatever reason it didn't work in Wine (no Proton runtime) in RDR2 with the Nvidia shim libs only in system32 folder (+native override), I had to copy them into RDR2 main folder. Anyone have an idea why it is that way? Doesn't seem to be required when running Lutris-/Wine-GE.

The DLSS implementation in RDR2 is pretty bad though. If somebody wants to see how good DLSS can look, e.g. Doom Et. is the way to go (I'd also replace the version shipped by the game with the 2.2.6 DLL, as it shows much less smearing artifacts).
LordDaveTheKind Oct 4, 2021
View PC info
  • Supporter Plus
To enable it you need to set PROTON_ENABLE_NVAPI=1, which you can do as a Steam launch option for games like PROTON_ENABLE_NVAPI=1 %command% (right click -> properties -> launch options).
Tried it all day long yesterday with mixed success. Works perfectly in this game:
  • Cyberpunk 2077 (Steam version)

Does not work at all for me in the following:
  • Control (Dx11/Dx12 - Steam version)
  • The Ascent (Dx11/Dx12 - Steam version)

Has anyone tried with any of the games above?

Edit (6th Oct): after downloading Ghostrunner GOG Version (redeemable for free via Twitch Prime), DLSS works also there for me. I have just downloaded, built and deployed the latest master branch of dxvk-nvapi and followed the instructions there.


Last edited by LordDaveTheKind on 6 October 2021 at 5:01 pm UTC
Cobiy Oct 6, 2021
To enable it you need to set PROTON_ENABLE_NVAPI=1, which you can do as a Steam launch option for games like PROTON_ENABLE_NVAPI=1 %command% (right click -> properties -> launch options).
Tried it all day long yesterday with mixed success. Works perfectly in this game:
  • Cyberpunk 2077 (Steam version)

Does not work at all for me in the following:
  • Control (Dx11/Dx12 - Steam version)
  • The Ascent (Dx11/Dx12 - Steam version)

Has anyone tried with any of the games above?

How did you get DLSS to work on Cyberpunk 2077, i tried with experimental proton version and the launch option but it still only has off as an option.
LordDaveTheKind Oct 6, 2021
View PC info
  • Supporter Plus
To enable it you need to set PROTON_ENABLE_NVAPI=1, which you can do as a Steam launch option for games like PROTON_ENABLE_NVAPI=1 %command% (right click -> properties -> launch options).
Tried it all day long yesterday with mixed success. Works perfectly in this game:
  • Cyberpunk 2077 (Steam version)

Does not work at all for me in the following:
  • Control (Dx11/Dx12 - Steam version)
  • The Ascent (Dx11/Dx12 - Steam version)

Has anyone tried with any of the games above?

How did you get DLSS to work on Cyberpunk 2077, i tried with experimental proton version and the launch option but it still only has off as an option.

Made several attempts: deleted the prefix, take all the variables in the Launch Options off and then on again, and relaunching the game at each attempt.
Currently I have the following Launch string:
 
PROTON_ENABLE_NVAPI=1 %command% --launcher-skip -skipStartScreen


Outcome is a little meh though:

While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.