Instructs game to try to render at a specified frame rate.
targetFrameRate is a special value -1, which indicates that the game should render at the platform's default frame rate. This default rate depends on the platform:
- On standalone platforms the default frame rate is maximum achievable frame rate.
- On mobile platforms the default frame rate is less than the maximum achievable frame rate due to need to conserve battery power. Typically on mobile platforms the default frame rate is 30 frames per second.
- On WebGL the default value lets the browser choose the frame rate to match its render loop timing which generally produces the smoothest results. Non-default values are only recommended if you want to throttle CPU usage on WebGL.
- When using VR Unity will use the target frame rate specified by the SDK and ignore values specified by the game.
targetFrameRate does not guarantee that frame rate will be achieved. There can be fluctuations due to platform specifics, or the game might not achieve the frame rate because the computer is too slow.
Additionally if the QualitySettings.vSyncCount property is set, the
targetFrameRate will be ignored and instead the game will use the vSyncCount and the platform's default render rate to determine the target frame rate. For example, if the platform's default render rate is 60 frames per second and vSyncCount is set to 2, the game will target 30 frames per second.
In the editor,
targetFrameRate affects only the Game window. It has no effect on other editor windows.