unity3D显示帧率FPS的脚本

public class Fps : MonoBehaviour {
	public UILabel m_FPS;
	float _updateInterval = 1f;//设定更新帧率的时间间隔为1秒
	float _accum = .0f;//累积时间
	int _frames = 0;//在_updateInterval时间内运行了多少帧
	float _timeLeft;

	void Start () {
		if(!m_FPS){
			enabled = false;
			return;
		}
		_timeLeft = _updateInterval;
	}
	
	// Update is called once per frame
	void Update () {
		_timeLeft -= Time.deltaTime;
		//Time.timeScale可以控制Update 和LateUpdate 的执行速度,
		//Time.deltaTime是以秒计算,完成最后一帧的时间
		//相除即可得到相应的一帧所用的时间
		_accum += Time.timeScale / Time.deltaTime;
		++_frames;//帧数

		if (_timeLeft <= 0) {
			float fps = _accum /_frames;
			//Debug.Log(_accum + "__" + _frames);
			string fpsFormat = System.String.Format("{0:F2}FPS",fps);//保留两位小数
			m_FPS.text = fpsFormat;

			_timeLeft = _updateInterval;
			_accum = .0f;
		_frames = 0;
		}
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值