【Unity】iOSビルドでフレームレートの設定をする方法

unity

MacのUnityエディタではサクサク動くのに、iPhone実機だとアプリが何だかモッサリして遅い。

今作っているアプリでは、Update関数の中でカウントアップを行い、一定数になったらボールを生成する処理を書いた。

しかし、よくよく考えると、Update関数が同じ時間で呼ばれる回数は端末(PC、スマホ)の性能(FPS)に依存する。

どの程度違うのだろうか。

PCで実行する場合、UnityエディタのStatsボタンでFPSが確認できる。

時間ごとに値は変わるが大体「60 〜 135」FPS出ている。

iOSだとデフォルトのFPSが30のようだ。

Unity iOS ではアプリケーションがレンダリングループを実行する頻度を変更することが可能です。デフォルトでは 30 フレーム毎秒です。

https://docs.unity3d.com/ja/2019.4/Manual/iphone-iOS-Optimization.html

そりゃ大きな差が出ますわ。2〜4倍くらい違うじゃんね。

UnityでFPSを上げる設定をしてみます。

「Project Settings」→「Quality」で以下の設定項目があります。

これを「Don’t Sync」に変更します。

private void Awake()
    {
        //フレームレートの設定
        Application.targetFrameRate = 60;
    }

これでiOSビルドしてあげればUnityエディタと同じ速度で動きます。

参考:https://qiita.com/YuwUnknown/items/c2584f961ca0d09d1cb1

ABOUTこの記事をかいた人

個人アプリ開発者。Python、Swift、Unityのことを発信します。月間2.5万PVブログ運営。 Twitter:@yamagablog