【100个 Unity小知识点】☀️

您所在的位置:网站首页 帧率看什么 【100个 Unity小知识点】☀️

【100个 Unity小知识点】☀️

2024-06-27 03:45| 来源: 网络整理| 查看: 265

Unity 小科普

老规矩,先介绍一下 Unity 的科普小知识:

Unity是 实时3D互动内容创作和运营平台 。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助 Unity 将创意变成现实。Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。 也可以简单把 Unity 理解为一个游戏引擎,可以用来专业制作游戏! Unity小知识点学习Unity中显示运行时游戏的帧率

帧率在一个游戏中的作用举足轻重,帧率能体现一个游戏运行的是否流畅

帧率 = 某段时间内的总帧数 / 某段时间帧率 = 1帧 / 运行一帧所需要的时间

简而言之就是在一秒钟内运行的总帧数,就称为帧率

现在的电脑、手机和游戏中都有帧率这一说,帧率越高内容越丝滑,所以高帧率一直深受人们喜欢

Unity中的帧率有以下几种方法查看:

第一种, 在Game视图中点击Stats按钮,即可查看游戏帧率在这里插入图片描述在这里插入图片描述第二种,使用代码:FPS=1 / Time.deltaTime

将以下代码放到Update中即可,

代码语言:javascript复制 float FPS = 1 / Time.deltaTime;

效果如下

请添加图片描述请添加图片描述第三种,使用代码:FPS = 某段时间内的总帧数 / 某段时间代码语言:javascript复制 public Text FPS_Text; private float m_LastUpdateShowTime = 0f; //上一次更新帧率的时间; private float m_UpdateShowDeltaTime = 0.2f;//更新帧率的时间间隔; private int m_FrameUpdate = 0;//帧数; private float m_FPS = 0;//帧率 private void Start() { m_LastUpdateShowTime = Time.realtimeSinceStartup; } private void Update() { m_FrameUpdate++; if (Time.realtimeSinceStartup - m_LastUpdateShowTime >= m_UpdateShowDeltaTime) { //FPS = 某段时间内的总帧数 / 某段时间 m_FPS = m_FrameUpdate / (Time.realtimeSinceStartup - m_LastUpdateShowTime); m_FrameUpdate = 0; m_LastUpdateShowTime = Time.realtimeSinceStartup; FPS_Text.text = (1 / Time.deltaTime).ToString(); } }

这段代码的含义就是用 某段时间内的总帧数 / 某段时间来计算出帧率,顺便还可以加一个更新帧率的时间间隔

上述代码也可以写成这样:

代码语言:javascript复制 public Text FPS_Text; private float m_UpdateShowDeltaTime;//更新帧率的时间间隔; private int m_FrameUpdate = 0;//帧数; private float m_FPS = 0;//帧率 private void Update() { m_FrameUpdate++; m_UpdateShowDeltaTime += Time.deltaTime; if (m_UpdateShowDeltaTime>=0.2) { m_FPS = m_FrameUpdate / m_UpdateShowDeltaTime; m_UpdateShowDeltaTime = 0; m_FrameUpdate = 0; FPS_Text.text = m_FPS.ToString(); } }

效果如下,每0.5秒更新一下帧率显示

请添加图片描述请添加图片描述


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3