What exactly does "Smooth Frame Rate" do?
In the project settings, you can find a setting called "Smooth Frame Rate". It looks like this:
Is there any documentation about how this exactly works? Does it deactivate effects or reduce the screen percentage to reach this minimum frame rate? And what does "Min Desired Frame Rate" mean in this context?
asked Aug 29 '14 at 03:52 PM in Rendering
Hi Spyro -
Smooth Frame Rate and VSync actually have a lot in common. To help understand what Smooth Frame Rate does I want to make sure we understand what VSync does.
VSync or Vertical Sync essentially is a means to control screen tearing (when the Frame Rate exceeds the Refresh Rate of the monitor) or stutter (when the Frame Rate drops below the Frame Rate Cap, typically 60 FPS) in your rendered application. In functionally works by setting and overall Frame rate based on the video card demands and the Monitor refresh rate, this will yield a very harsh jump sometimes between 30 FPS and 60 FPS on modern machines which yields the stuttering effect. With modern monitors and Video Cards, VSync is not often as critical an issue (depending of course on demands of the system and desired results); and, for that reason, VSync for most is set to Application Specific in your Video Card's Configuration Manager (like NVidia Control Panel). This allows each Application to decide whether you want to use VSync with it or not.
Most modern video cards have a means of adaptive V Syncing which yields much better results with less stuttering and will yield a curve more like the following:
So it locks the higher end of the Frame Rate to 60 and turns v-Sync off below 60 allowing for less stuttering.
With Frame Rate Smoothing, the application is determining what range is acceptable for frame rate wandering, so you can cap your frame rate to between Min and Max allowable frame rates. Since this is application based, it will make these changes before any hardware vsync changes. (<-- TL;DR answer)
As an example, let's say I have a great game I have built that runs amazing on my Titan X card and it is running at around a consistent 75 to 85 FPS. Well, I know most users will not have the higher end machine to play on (or if I am developing for console the target is usually 60 FPS exactly). So I set the smooth Framerate to a range of 40 to 60 FPS. This means even though my machine could run at a much higher frame rate, for the best experience for all playing I want to cap that number at 60 FPS. Taking this a step further, if I have a user who is playing my great game but on a lower end machine which is struggling at 40 FPS, the VSync hardware changes will probably limit the FPS of the game to 30FPS after the Smooth Frame Rate shifts to a lower 40FPS.
This is one one of many reasons that developing for the PC market can be challenging and extensive testing has to be done on multiple PC make-ups and why many companies will but in Min. Specifications for games.
Hopefully this helps clear up what Smooth Frame Rate is used for.
answered Oct 22 '15 at 04:24 PM
Lovecraft_K ♦♦ STAFF
Wow, didn't hope to get answered this after 14 months of waiting... ;)
So, as long as I got V-Sync enabled to avoid tearing and microstuttering and I can maintain the framerate, this essentially doesn't have any effect, right?
answered Oct 25 '15 at 03:41 PM
Follow this question
Once you sign in you will be able to subscribe for any updates here