You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.0 KiB
38 lines
1.0 KiB
using System; |
|
using UnityEngine; |
|
using UnityEngine.UI; |
|
|
|
namespace UnityStandardAssets.Utility |
|
{ |
|
[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); |
|
} |
|
} |
|
} |
|
}
|
|
|