Contador de FPS de Unity

En videojuegos, los cuadros por segundo (o fps para abreviar) es un valor que representa la cantidad de cuadros que la computadora procesa en un segundo.

Los cuadros por segundo son un excelente indicador de rendimiento y se pueden usar durante el proceso de optimización, o simplemente para obtener comentarios sobre qué tan rápido/ Suaviza el juego.

En este tutorial, mostraré cómo agregar un contador de fps simple a su juego en Unity.

Pasos

Para mostrar los fps en el juego, necesitaremos crear un script que cuente los fotogramas y los muestre en la pantalla.

  • Crea un nuevo script, llámalo "SC_FPSCounter" y pega el siguiente código dentro de él:

SC_FPSCounter.cs

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class SC_FPSCounter : MonoBehaviour
{
    /* Assign this script to any object in the Scene to display frames per second */

    public float updateInterval = 0.5f; //How often should the number update

    float accum = 0.0f;
    int frames = 0;
    float timeleft;
    float fps;

    GUIStyle textStyle = new GUIStyle();

    // Use this for initialization
    void Start()
    {
        timeleft = updateInterval;

        textStyle.fontStyle = FontStyle.Bold;
        textStyle.normal.textColor = Color.white;
    }

    // Update is called once per frame
    void Update()
    {
        timeleft -= Time.deltaTime;
        accum += Time.timeScale / Time.deltaTime;
        ++frames;

        // Interval ended - update GUI text and start new interval
        if (timeleft <= 0.0)
        {
            // display two fractional digits (f2 format)
            fps = (accum / frames);
            timeleft = updateInterval;
            accum = 0.0f;
            frames = 0;
        }
    }

    void OnGUI()
    {
        //Display the fps and round to 2 decimals
        GUI.Label(new Rect(5, 5, 100, 25), fps.ToString("F2") + "FPS", textStyle);
    }
}
  • Adjunte el script SC_FPSCounter a cualquier objeto en la Escena y presione Reproducir:

Cuadros por segundo

Fps ahora debería mostrarse en la esquina superior izquierda.