본문 바로가기

프로그램/유니티 스크립트 소스

[유니티 스크립트 소스] 프레임 레이트(Frame rate)구하기

728x90
반응형

1. 소스

게임 프레임 레이트(Frame rate)를 계산하는 소스입니다.

 

using UnityEngine; 
using UnityEngine.UI; 

public class GetFramerate : MonoBehaviour 
{ 
    public float m_Period = 0.5f; 
    private int m_Accumulator = 0; 
    private float m_NextPeriod = 0; 
    public int m_CurrentFramerate; // 프레임 레이트 
    public Text m_Text; // UI에 디스플레이를 원하면 하이아키에 Text를 만든 뒤 할당하면 됩니다. 

    void Start() 
    { 
        m_NextPeriod = Time.realtimeSinceStartup + m_Period; 
    } 

    void Update() 
    { 
        m_Accumulator++; 

        if (Time.realtimeSinceStartup > m_NextPeriod) 
        { 
            m_CurrentFramerate = (int)(m_Accumulator / m_Period); 
            m_Accumulator = 0; 
            m_NextPeriod += m_Period; 

            if (m_Text) 
                m_Text.text = string.Format($"{m_CurrentFramerate} Hz"); 
        } 
    } 
}

 

 

프레임 레이트를 설정은 일반적으로 GameController.cs 에서 설정합니다.

 

using UnityEngine;

public class GameController : MonoBehaviour
{
    public int m_TargetFrameRate = 60;
        
    void Start()
    {
        Application.targetFrameRate = m_TargetFrameRate;
    }
}

 

2. 결과

코더제로 유니티 스크립트 소스 프레임 레이트(Frame rate)구하기
그림. 프레임 레이트(Frame rate)구하기

 

3. 데모

 

 

728x90
반응형