Unity FPS-räknare

I videospel är bildrutor per sekund (eller fps för kort) ett värde som representerar antalet bildrutor som datorn renderar på en sekund.

Bildrutor per sekund är en bra indikator på prestanda och kan användas under optimeringsprocessen, eller helt enkelt för att få feedback om hur snabbt/smidigt spelet går.

I den här handledningen kommer jag att visa hur du lägger till en enkel fps-räknare till ditt spel i Unity.

Steg

För att visa fps i spelet måste vi skapa ett skript som räknar bildrutor och visar dem på skärmen.

  • Skapa ett nytt skript, kalla det "SC_FPSCounter" och klistra in koden nedan i det:

SC_FPPSCounter.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);
    }
}
  • Bifoga SC_FPSCounter-skriptet till valfritt objekt i scenen och tryck på Play:

Bildrutor per sekund

Fps ska nu visas i det övre vänstra hörnet.

Föreslagna artiklar
Zone Controller Pro - Unity Asset Store-paket
Hur man använder nytt HDRP-vattensystem i Unity
FPC Swimmer - En omfattande enhetstillgång för uppslukande vattenmiljöer
Ultimate Spawner 2.0 - En tillgång som förändrar spelet
Mouse Look Script för Unity
Weather Maker - höjer enhetsmiljöer till nya höjder
Hur man använder Xbox Controller i Unity