What is frame time?
Frame time is the time it takes to execute or render a frame. Also sometimes described as the milliseconds between each frame. It is a very useful as a metric because it not only shows how long it takes to render or execute a frame but how consistent the timing is between multiple frames being rendered.
Example of frame time
The video above will provide an example to how frame time functions. Look at the different frame rates 120 fps, 60 fps, and 30 fps the blue lines for each represent frames. The orange line scrolling through the frames represents rendering or execution time. Essentially the lower the frame rate is the longer it takes to render a frame. The higher the frame rate is the shorter the time it takes to render a frame. From this example we can clearly see how many frames are being rendered depending on the frame rate.
Take the bottom 30 fps for example if a game runs at 30 frames per second consistently then it takes 33.33 milliseconds to render one frame. If a game runs at 60 frames per second consistently then it takes 16.67 milliseconds to render one frame. If a game runs at 120 frames per second consistently then it takes 8.33 milliseconds to render one frame. Within the time it takes to render one frame at 30 fps four frames are being rendered at 120 fps. This is a quite the drastic leap in the amount of frames being rendered.
*Note this is an example of frames being rendered at a consistent rate*
Why is frame time important?
Frame time is critical because inputs are typically processed per frame. Hence the less time it takes to render a frame the faster the user inputs are processed. And it takes quite a bit of time to render everything on the screen from physics, animations, particles, objects, explosions and many other elements. All of these factors contribute to the time it takes to render one frame.
It is also crucial that the frame time is consistent because the user’s inputs will vary depending upon how long it takes to render a frame. If the frames render at different times it can lead to a massive amount of stuttering. But it will also lead to an increase in input lag. The image will begin to jump around between frames and look jittery in motion. But my favorite part the cherry on top of the ice cream sundae is that it becomes a complete nightmare to control.
This is an example of micro stuttering that occurs in games.
Inconsistent Frame Time leads to stuttering
Have you ever played a game and dealt with annoying stuttering problems? This is precisely what happens when a game has an inconsistent frame time. The frames are not being executed or rendered in a consistent manner and the timings between the rendering are different. In turn the game transforms into a joyful romp of pain and misery. Where the game bounces around as you pointlessly struggle to gain control.
For example imagine doing something simple like oh I don’t know move your character around. You press the button once and it takes for 50 milliseconds for the input to register. Then you try to move in another direction you press the button again and all of a sudden it takes 300 milliseconds to register the exact same input. Unfortunately by the time your input has finished registering you have been shot. Game Over. Oh how wonderful!
This is exactly why it is so important for the frames to be rendered at a consistent rate.
How to calculate Frame Time
The equation to understand this is pretty simple. frame time = 1000 milliseconds / frames per second
Below is an example of frame times changing depending on the fps (frames per second) a game is running at. The higher the frame rate is the less time it takes to render a frame. It is also critical that these frames are being rendered at a consistent rate as well. This leads to lower input lag and improved game play performance.
Frame Time
15 frames per second equals 66.66 milliseconds to render a frame
30 frames per second equals 33.33 milliseconds to render a frame
45 Frames per second equals 22.22 milliseconds to render a frame
60 Frames per second equals 16.67 milliseconds to render a frame
75 Frames per second equals 13.33 milliseconds to render a frame
90 Frames per second equals 11.11 milliseconds to render a frame
105 Frames per second equals 9.52 milliseconds to render a frame
120 Frames per second equals 8.33 milliseconds to render a frame
Conclusion
What we can conclude from this is that frame rate is not the only metric that should be studied when gauging performance. Frame times are an absolutely critical metric to performance. By analyzing the execution and rendering times of every frame we can gain insight into the performance of frames being rendered. This information helps us understand why problems such as stuttering issues, screen tearing issues, inconsistent input lag, and jittery camera motion are happening.
In this regard frame time is even more important than frame rate. Even if a game can runs at 120 frames per second the pacing between frames may be uneven and will cause the game to jump around and skip like a broken record player. Therefore it is important to include frame time as a key metric in any performance analysis.
These two articles go into further detail about the topic. Check them out
https://www.vortez.net/articles_pages/frame_time_analysis,4.html


Comments 1
Inconsistent Frame Time leads to stuttering this thing is happening with me what’s the solution for this?