标签:显示 float private framesCount Unity FPS public accumTime
直接上代码:
using UnityEngine;
using UnityEngine.UI;
public class FPSControl : MonoBehaviour
{
[SerializeField, Tooltip("拖入显示FPS的TEXT文本组件")]
public Text fpsText;
[SerializeField, Tooltip("true:显示FPS;false:隐藏FPS")]
public bool isShowFPS = true;
[SerializeField, Tooltip("FPS刷新周期T")]
public float updateTimeT = 0.5f;
private int framesCount = 0;
private float accumTime = 0.0f;
private float leftTime = 0.0f;
void Update()
{
if (fpsText != null && isShowFPS)
{
ShowFps();
}
}
private void ShowFps()
{
leftTime -= Time.unscaledDeltaTime; //无缩放的delta time
accumTime += Time.unscaledDeltaTime;
++framesCount;
if (leftTime <= 0)
{
float fps = framesCount / accumTime; //帧数/帧数对应的实际时间
fpsText.text = string.Format("FPS: {0:f0}", fps);
accumTime = 0.0f; //初始化
framesCount = 0;
leftTime = updateTimeT;
}
}
}
标签:显示,float,private,framesCount,Unity,FPS,public,accumTime 来源: https://blog.csdn.net/kuilaurence/article/details/120564249
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。