ppy / osu

rhythm is just a *click* away!
https://osu.ppy.sh
MIT License
15.09k stars 2.23k forks source link

Tabbing into Discord can Cap your fps to 50 even when you tab back into Lazer [Windows] #29033

Open LargerManZ opened 1 month ago

LargerManZ commented 1 month ago

Type

Performance

Bug description

(This is not completely consistent, however, I was able to reproduce it with several tries. I think that it is only working when tabbing into discord specifically.)

If you have your monitor that you have Lazer on set to 144 hz, and you have a secondary monitor on 60 hz, with lazer on borderless fullscreen, you can click on the second monitor and switch focus. This will cap your osu lazer's fps to the cap on the secondary monitor. This continues until you click on a different window that is on the Primary monitor that is capped at 144 hz.

Screenshots or videos

CorrectFps FPSAfterdiscord

Version

2024.718.1-lazer

Logs

compressed-logs.zip

peppy commented 1 month ago

This is intentional.

LargerManZ commented 1 month ago

It caps it to 50 still while you are focused in osu. If that is intentional, that is terrible design.

LargerManZ commented 1 month ago

If you are not focused on the osu window, it would make more sense, but this is not the case.

LargerManZ commented 1 month ago

When you click back into the Lazer window from discord, it will consistently lock your osu fps to 50 until you tab into another tab, then back into osu. https://github.com/user-attachments/assets/11d6f0ea-4619-497b-9021-e164609c3395

smoogipoo commented 1 month ago

Does using the environment variable OSU_SDL3=1 help things?

LargerManZ commented 1 month ago

Does using the environment variable OSU_SDL3=1 help things?

Might I get some assistance in trying this out?

LargerManZ commented 1 month ago

I'm on windows, so I don't have a linux terminal handy.

Jan-Arbus commented 1 month ago

Does using the environment variable OSU_SDL3=1 help things?

Might I get some assistance in trying this out?

You can set the variable in PowerShell using $env:OSU_SDL3="1"

LargerManZ commented 1 month ago

I does not help. I tried doing exactly as you said with Admin Powershell and it didn't change anything.

Jan-Arbus commented 1 month ago
  1. Run $env:OSU_SDL3="1" in Powershell, please do not use administrator powershell.
  2. Run cd ~\AppData\Local\osulazer
  3. Run .\osu!.exe The game should then run with SDL3, you can confirm this by pressing Ctrl+F11
LargerManZ commented 1 month ago

I followed these instructions exactly, and it is running in SDL3. It has not changed the behavior with tabbing back into the game from discord.