protonscr

VRR locked at 60hz on Source 2013 games on Proton 9 and Experimental

protonopen
ValveSoftware/Proton#8542 · opened 2025-03-19 by webbongithub · updated 2025-04-05 · 4 comments · github
2 matching comments, n / p to jump
Wwebbongithub 2025-03-19 github

Compatibility Report

  • Name of the game with compatibility issues: Source SDK 2013 Games (Tested: Team Fortress 2 Classic, Half-Life 2, Fortress Forever 2013 Branch)
  • Steam AppID of the game: 220, 253530, 243750

System Information

I confirm:

  • [x] that I haven't found an existing compatibility report for this game. [This affects many games and I haven't found this specific issue]
  • [x] that I have checked whether there are updates for my system available.

Symptoms

When Vsync is enabled on a VRR monitor, the FPS will never go above sixty. VRR /seems to work/ given it goes below 60 at times. This issue was observed on GNOME and KDE. Using Proton 8 or below resolves the issue.

Screenshots of the issue

Proton 9

Image

Proton 8

Image

Reproduction

  1. Launch a Source 2013 game with a VRR monitor on Proton 9 or Experimental
  2. Enable Vsync
  3. Profit
Pphora 2025-03-26 github

I looked around the dependencies for Proton that changed between version 8.0-5 and 9.0-4 . Of note, I saw that a commit in vkd3d-proton introduced a frame rate limiter. Commit is HansKristian-Work/vkd3d-proton@80f6c46 .

I then checked the most recent releases of Proton to see if the referenced code got introduced into Proton 9.0-4.

If possible, can you test the same game under Proton 9.0-2 to check if it's this commit causing the locked at 60hz issue?

Wwebbongithub 2025-03-27 github

@phora Do you know where I can find a binary version for 9.0-2? The registry used for building seems to be down/broken.

Pphora 2025-04-03 github

That I'm not entirely sure. I booted up my Steam Deck to check if it's possible to roll back to that specific version to test (which is no). However I did notice on both of the READMEs for vkd3d-proton and dxvk that there's these two environment variables you can set to uncap the frame rate.

Setting VKD3D_FRAME_RATE to 0 and DXVK_FRAME_RATE to 0 for the game should uncap the frame rate.

Wwebbongithub 2025-04-05 github

That I'm not entirely sure. I booted up my Steam Deck to check if it's possible to roll back to that specific version to test (which is no). However I did notice on both of the READMEs for vkd3d-proton and dxvk that there's these two environment variables you can set to uncap the frame rate.

Setting VKD3D_FRAME_RATE to 0 and DXVK_FRAME_RATE to 0 for the game should uncap the frame rate.

Unfortunately setting those environment variables didn't work, still seeing the same behaviour.

Proton versions

Launch options