protonscr

[d3d9] King Of Fighters XIII: d3d9.maxFrameRate doesn't work but DXVK_FRAME_RATE does

dxvkclosed
doitsujin/dxvk#2647 · opened 2022-05-20 by ranplayer · updated 2022-09-12 · 3 comments · github
Rranplayer 2022-05-20 github

This game has the speed tied to the frame rate. For monitors with refresh rates higher than 60 makes the game extremely fast. This issue has been pointed out in the pcgamingwiki as well.

I've tried to lock the frame rate to 60 using the properties d3d9.maxFrameRate=60 and dxgi.maxFrameRate=60 with no success, but using the environment variable DXVK_FRAME_RATE=60 does work.

Software information

  • Resolution: 1080p (fullscreen)

System information

  • O.S: Manjaro
  • Kernel: 5.15
  • GPU: GTX 970 4Gb (Driver: 510.62)
  • CPU: Ryzen 7 5700G
  • Monitor Refresh Rate: 144Hz
  • Wine version: Proton 7.0-2 (or below)
  • DXVK version: 1.10.1

Apitrace file(s)

Log files

kofxiii_d3d9.tar.gz

Ddoitsujin maintainer 2022-05-20 github

The config option only has an effect if you're running the game at a refresh rate greater than 60 Hz or with vsync disabled. If you're running this through proton then it probably just doesn't work because the game requests a 60 Hz mode, fshack doesn't actually perform a mode change, but DXVK still thinks it's running at 60 because we still see all available display modes. Not really something we can fix properly on our end without relying on some really dodgy heuristics (which I might implement anyway, but you know, it's still going to be dodgy).

On the other hand I don't want to change DXVK's behaviour here since it would force DXVK's frame limiter on some games even on setups with actual 60 Hz displays, which is just going to result in a terrible experience.

Rranplayer 2022-05-20 github

Alright, thank you for the explanation. I'm going to stick with the environment variable for this game then.

BBlisto91 2022-08-17 github

@ranplayer The config variable should now work in more scenarios as of https://github.com/doitsujin/dxvk/commit/61025c0079cfc452f0a6e65a022905053f904174

Were you looking for a built in dxvk config so it's capped at 60 out of the box to work around those issues?
I see on pcgamingwiki the game might capped when playing online but not solo? Unless i misunderstand that. Some people on protondb seem to supply the -r argument which i think kicks in the ingame limiter.

Proton versions

Launch options