RoanH / KeysPerSecond

A keys-per-second meter & counter. Written for osu! but should work for other rhythm games too.
https://osu.ppy.sh/forum/t/552405/
GNU General Public License v3.0
346 stars 28 forks source link

Support overlaying fullscreen applications #28

Open Shiori857 opened 3 years ago

Shiori857 commented 3 years ago

Checked the Overlay mode and when I switch to osu while fullscreen, it doesn't overlap. Is there a way to make it overlap or is does it not work for fullscreen programs?

RoanH commented 3 years ago

The current overlay mode does not overlay applications that are running in exclusive full screen mode, since this is actually impossible.

I know this is a popular feature request, but sadly this is not trivial. What's commonly called a full screen overlay is actually just a different application injecting itself into the full screen process. Then it just makes the full screen process execute some extra instructions to draw the 'overlay'.

Aside from being quite challenging to implement in a reliable way, there are also some other issues with overlays like this. The most important one being that anti-cheat systems generally flag this approach unless you're a popular white listed application.

That being said, I do have this feature on my long term todo list, but due to the time required to implement it and the fairly limited time I have available I have no idea when I'll be able to put something together that might work.

For the time being the only work around is to not run your application in exclusive full screen mode, but in borderless windowed full screen for example. This however comes with the drawback that now the game no longer has exclusive access to the hardware, which could lead to lower performance.