【Unity3D小技巧】Unity3D中实现FPS数值显示功能实现

推荐阅读

大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。

一、前言

很简单也很使用的小技巧,就是在Unity3D中实现FPS数值。

实现的思路就是,在Update里面,使用+=Time.deltaTime,得到一帧的秒数。

然后,每过一秒,去除以固定帧率30帧,得到这一秒的FPS值。

二、正文

新建脚本,编辑代码,代码参考:

csharp 复制代码
using System.Collections.Generic;
using TMPro;
using UnityEngine;

public class FpsDisplay : MonoBehaviour
{
    [SerializeField]
    TextMeshProUGUI text = null;

    [SerializeField]
    float updateRate = 30f;

    float deltaTime;
    int fps;
    float lastUpdateTime;

    Dictionary<int, string> pool = new Dictionary<int, string>();

    private void Awake()
    {
        DontDestroyOnLoad(this);
    }

    void Update()
    {
        if (Time.timeScale.Equals(0f))
        {
            return;
        }

        deltaTime += (Time.deltaTime - deltaTime) * 0.1f;
        fps = Mathf.CeilToInt(1f / deltaTime);

        var time = Time.time;
        if (time - lastUpdateTime > 1f / updateRate)
        {
            lastUpdateTime = time;

            if (!pool.ContainsKey(fps))
            {
                pool.Add(fps, fps.ToString());
            }

            text.text = pool[fps];
        }
    }
}

新建个空对象,然后在空对象上,新建TextMeshPro放到角落里:

把组件都拖过去:

运行结果:

三、后记

如果觉得本篇文章有用别忘了点个关注,关注不迷路,持续分享更多Unity干货文章。


你的点赞就是对博主的支持,有问题记得留言:

博主主页有联系方式。

博主还有跟多宝藏文章等待你的发掘哦:

专栏 方向 简介
Unity3D开发小游戏 小游戏开发教程 分享一些使用Unity3D引擎开发的小游戏,分享一些制作小游戏的教程。
Unity3D从入门到进阶 入门 从自学Unity中获取灵感,总结从零开始学习Unity的路线,有C#和Unity的知识。
Unity3D之UGUI UGUI Unity的UI系统UGUI全解析,从UGUI的基础控件开始讲起,然后将UGUI的原理,UGUI的使用全面教学。
Unity3D之读取数据 文件读取 使用Unity3D读取txt文档、json文档、xml文档、csv文档、Excel文档。
Unity3D之数据集合 数据集合 数组集合:数组、List、字典、堆栈、链表等数据集合知识分享。
Unity3D之VR/AR(虚拟仿真)开发 虚拟仿真 总结博主工作常见的虚拟仿真需求进行案例讲解。
Unity3D之插件 插件 主要分享在Unity开发中用到的一些插件使用方法,插件介绍等
Unity3D之日常开发 日常记录 主要是博主日常开发中用到的,用到的方法技巧,开发思路,代码分享等
Unity3D之日常BUG 日常记录 记录在使用Unity3D编辑器开发项目过程中,遇到的BUG和坑,让后来人可以有些参考。
相关推荐
Unity大海1 小时前
诠视科技Unity SDK开发环境配置、项目设置、apk打包。
科技·unity·游戏引擎
浅陌sss6 小时前
Unity中 粒子系统使用整理(一)
unity·游戏引擎
维度攻城狮11 小时前
实现在Unity3D中仿真汽车,而且还能使用ros2控制
python·unity·docker·汽车·ros2·rviz2
为你写首诗ge14 小时前
【Unity网络编程知识】FTP学习
网络·unity
1alisa16 小时前
Sublime Text for Mac v4【注册汉化版】代码编辑器
macos·编辑器·sublime text
神码编程16 小时前
【Unity】 HTFramework框架(六十四)SaveDataRuntime运行时保存组件参数、预制体
unity·编辑器·游戏引擎
菲fay17 小时前
Unity 单例模式写法
unity·单例模式
mzak18 小时前
vscode集成deepseek实现辅助编程(银河麒麟系统)【详细自用版】
linux·vscode·编辑器·银河麒麟·deepseek
一个程序员(●—●)19 小时前
编辑器检视器面板深度扩展2+编辑器菜单栏扩展
编辑器
火一线19 小时前
【Framework-Client系列】UIGenerate介绍
游戏·unity