Eenheid FPS-teller

In videogames is frames per seconde (of kortweg fps) een waarde die het aantal frames weergeeft dat de computer in één seconde weergeeft.

Frames per seconde zijn een goede prestatie-indicator en kunnen worden gebruikt tijdens het optimalisatie-proces, of gewoon om feedback te krijgen over hoe snel/soepel het spel draait.

In deze tutorial laat ik zien hoe je een eenvoudige fps-teller aan je game kunt toevoegen in Unity.

Stappen

Om fps in de game weer te geven, moeten we een script maken dat frames telt en deze op het scherm weergeeft.

  • Maak een nieuw script, noem het "SC_FPSCounter" en plak de onderstaande code erin:

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);
    }
}
  • Voeg het SC_FPSCunter-script toe aan een object in de scène en druk op Play:

Beelden per seconde

Fps zou nu in de linkerbovenhoek moeten worden weergegeven.

Voorgestelde artikelen
Hoe u het nieuwe HDRP-watersysteem in eenheid kunt gebruiken
Script voor het maken van een lichtschakelaar in eenheid
Joystickcontroller instellen voor beweging in eenheid
2D-munten verzamelen in eenheid
Doelindicator in eenheid
Slow motion-effect in eenheid
Deurscripts voor eenheid