| 123456789101112131415161718192021222324252627282930313233343536 | using UnityEngine;using UnityEngine.UI;namespace HQFPSWeapons.UserInterface{    [RequireComponent(typeof (Text))]    public class FPSCounter : MonoBehaviour    {        const float fpsMeasurePeriod = 0.5f;        private int m_FpsAccumulator = 0;        private float m_FpsNextPeriod = 0;        private int m_CurrentFps;        const string display = "{0} FPS";        private Text m_Text;        private void Start()        {            m_FpsNextPeriod = Time.realtimeSinceStartup + fpsMeasurePeriod;            m_Text = GetComponent<Text>();        }        private void Update()        {            // Measure average frames per second            m_FpsAccumulator++;            if (Time.realtimeSinceStartup > m_FpsNextPeriod)            {                m_CurrentFps = (int) (m_FpsAccumulator/fpsMeasurePeriod);                m_FpsAccumulator = 0;                m_FpsNextPeriod += fpsMeasurePeriod;                m_Text.text = string.Format(display, m_CurrentFps);            }        }    }}
 |