מונה FPS של Unity
במשחקי וידאו, פריימים לשנייה (או בקיצור fps) הוא ערך המייצג את מספר הפריימים שהמחשב מעבד בשנייה אחת.
פריימים לשנייה הוא אינדיקטור מצוין לביצועים וניתן להשתמש בו במהלך תהליך האופטימיזציה, או פשוט כדי לקבל משוב על כמה מהר/חלק המשחק פועל.
במדריך זה, אני אראה כיצד להוסיף מונה fps פשוט למשחק שלך ב-Unity.
שלבים
כדי להציג תמונות לשנייה במשחק, נצטרך ליצור סקריפט שיספור פריימים ויציג אותם על המסך.
- צור סקריפט חדש, קרא לו "SC_FPSCounter" והדבק בתוכו את הקוד למטה:
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);
}
}
- צרף את הסקריפט SC_FPSCounter לכל אובייקט בסצנה והקש על הפעל:
Fps אמור להיות מוצג כעת בפינה השמאלית העליונה.