Created
August 18, 2020 06:08
-
-
Save todorok1/d84b0245af21b4b1e481b96ff78175fd to your computer and use it in GitHub Desktop.
シーンのFPSを測定するサンプル
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System.Collections; | |
using System.Collections.Generic; | |
using UnityEngine; | |
using TMPro; | |
/// <Summary> | |
/// シーンのフレームレートを計測して画面に表示するスクリプトです。 | |
/// </Summary> | |
public class FpsChecker : MonoBehaviour | |
{ | |
// フレームレートを表示するテキストです。 | |
public TextMeshProUGUI fpsText; | |
// Update()が呼ばれた回数をカウントします。 | |
int frameCount; | |
// 前回フレームレートを表示してからの経過時間です。 | |
float elapsedTime; | |
void Start() | |
{ | |
} | |
void Update() | |
{ | |
// 呼ばれた回数を加算します。 | |
frameCount++; | |
// 前のフレームからの経過時間を加算します。 | |
elapsedTime += Time.deltaTime; | |
if (elapsedTime >= 1.0f) | |
{ | |
// 経過時間が1秒を超えていたら、フレームレートを計算します。 | |
float fps = 1.0f * frameCount / elapsedTime; | |
// 計算したフレームレートを画面に表示します。(小数点以下2ケタまで) | |
string fpsRate = $"FPS: {fps.ToString("F2")}"; | |
fpsText.SetText(fpsRate); | |
// フレームのカウントと経過時間を初期化します。 | |
frameCount = 0; | |
elapsedTime = 0f; | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment