はじめに
Unityのフレームレートの設定は、ゲームのパフォーマンスに直結する重要な要素です。
本記事では、フレームレートの設定する方法について解説します。
検証環境
Unity
2022.3.12f1
フレームレートとは
フレームレート(fps:Frames Per Second)は、1秒間に描画されるフレームの数を表します。
この数値が大きければゲームは滑らかな動作やアニメーションをします。
逆にフレームレートが低いと、動きがカクカクしてると感じる可能性があります。
また、画面の滑らかさ以外にもバッテリー消費や発熱にも影響してきます。
フレームレートの確認方法
Unityエディタ上でフレームレートの簡単な確認方法は
Game view を開き Stats を表示します。
表示された画面の Graphics: ○○fps がフレームレートの値になります。
フレームレートの設定方法
Unityの初期設定では、ディスプレイのリフレッシュレート によって変動してしまいます。
なので、ディスプレイとの同期しないようにし、フレームレートを固定するよう設定を変更します。
フレームレートの固定
メニューバーから Edit > Project Settings > Quality を開きます。
VSync Count を Don‘t Sync 変更することでフレームレートの固定できます。
また、この項目は以下のような動作をします。
Don‘t Sync : ディスプレイと同期しない
Every V Blank : ディスプレイのリフレッシュレートを目標値に
Every Second V Blank : ディスプレイのリフレッシュレートの半分を目標値に
フレームレートの固定ができたので次は、目標値の設定をしていきます。
フレームレートの目標値を設定
フレームレートの目標値は Application.targetFrameRate
から設定できます。
void Start()
{
// 60fpsを目標に設定
Application.targetFrameRate = 60;
}
この値は、VSync Count が Don‘t Sync 以外の場合は無視されてしまうので注意です。
ちなみに VSync Count も QualitySettings.vSyncCount
から設定できます。
void Start()
{
// VSyncCount を Dont Sync に変更
QualitySettings.vSyncCount = 0;
// 60fpsを目標に設定
Application.targetFrameRate = 60;
}
QualitySettings.vSyncCount
の数値は
0 : Don‘t Sync
1 : Every V Blank
2 : Every Second V Blank
となります。
コメント