SetSyncRate is broken and I think it always was, but nobody noticed.
Originally I thought it happened rarely, that it was a random problem.
SetSyncRate is unable to maintain the frame rate, for example if it is at 60 fps, it actually marks 50, and if it is 30 it will score 25
But if the mouse is outside the game window and if the mouse is moving, in some cases the game gets the desired frame rate, but only with the mouse outside the window but the window needs to be focused.
I recorded the bug
https://streamable.com/ejit27
However it doesn't always work that way, so test 4 programs, AppGameKit IDE, Atom, Word, VS Code
https://streamable.com/8wlesd
And then I tried AAA games that would use the pc harder. And setsyncrate works
Therefore setsyncrate only works if the computer is in a process with something that makes greater use of the Cpu.
Having web browsers open in the background or minimized also results in the same, if you close them all the framerate drops. Except Chrome for some reason. This is most notable with Opera.
There are more topics out there about this problem, but nobody noticed what caused it.
https://forum.thegamecreators.com/thread/223642
https://forum.thegamecreators.com/thread/213210
https://forum.thegamecreators.com/thread/218409