As a seasoned developer on Roblox, one of my biggest gripes is the 60 FPS cap.
To go above the refresh rate right now on desktop, you need to download and run a 3rd party tool:
This tool frequently breaks with updates, especially on Studio. It’s become routine after Byfron.
Regardless, I’ve been using tools to uncap FPS for years. It’s never been an issue on Studio or in games. I’ve personally tested and supported uncapped refresh rate on all of my games.
Studio should be supported at bare minimum. As a developer, I should be able to TEST how my games perform at an uncapped refresh rate - without having to download and run 3rd party software.
120hz+ monitors are now mass produced flooding the market at similar prices to 60hz monitors. Newer consoles and TVs have been able to support 120hz at 1080p and higher resolutions. Adaptive refresh rate is becoming common-place on phones.
It was announced at RDC 2019 by Arseny this was likely being supported in 2020:
It’s not mentioned anywhere on the developer roadmap:
I’d like to know why this isn’t a priority. Beyond a QOL improvement, it’s posing a security risk by pushing developers & players off platform for solutions. Developers cannot ensure their games are working correctly for these players. It’s creating a grey-area which is ultimately just a decision and switch on Roblox’s end.
Top results on google for “Roblox FPS Unlocker” are sketchy at best. This video with a million views instructs users to turn off anti virus software.
100% agree. I find it very unusual that a platform which has been around for years and years of industry change, lacks in the simplest of engine features such as unlocked FPS, emission maps, and even discrete graphical options.
It has been brought to their attention several times, but it seems like the opinions of stockholders have overshadowed practicality
Roblox Studio is not protected by Hyperion, and generally speaking, we don’t actively take measures to prevent FPS unlockers from working. However, some of the FPS unlockers attempt to locate internal variables and subsequently override them. This, by its very nature, is extremely error-prone and certainly not something we can support in any way, shape, or form. As of right now, we recommend using the corresponding FastFlag to set the refresh rate. You can find a write-up on how to do so by @WaviestBalloonhere.
Because it’s not that simple. This is left as a flag because it’s clearly not stable enough to be something normal users should be touching right now. If you’re unlocking fps, you’re implicitly accepting that you may encounter issues.
The difference between a stopgap which “mostly” works and an official feature which always works is vast. In fact, getting that last 10% of the way to a fully supported feature often takes 90% of the work.
Interacting with the viewport and testing in Studio feels a lot better for those of us with a higher refresh rate monitor. I do want to bring up one interesting part I really enjoy about having uncapped FPS, and that’s using the Micro Profiler to debug performance for my game, mostly for the performance of my code. The baseline is usually around 16ms if it’s capped, but if I uncap it, it sits at around 4-6ms, so it shows spikes from unoptimized code that might not pass the cap on my computer, but could be more troublesome for other devices.
Another huge pro would be that it’d be less tedious to make sure that we don’t have anything linked to RenderStepped incorrectly - for example, spinning a UIGradient on-screen, but only incrementing it each frame instead of multiplying it by its delta time, so it might be 4x as fast on a 240Hz display over 60Hz.
It’s 2023 and I’d really love to see an uncapped & adjustable frame rate for both Studio and the Client. It’s becoming more of a necessity that we’re given built-in tools to create for devices that are capable of running at higher than 60 FPS.