提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
学习unity的个人记录,本章节了解Time.deltaTime的具体作用
一、Time.deltaTime是什么?
在Update()方法里,游戏每帧会调用一次Update方法,假如现在每秒是60帧,我们想让人物每帧移动1米,那么这一秒就移动了60米; 假设第二秒帧数为30帧,那么这一秒就移动了30米,在帧数不稳定的情况下每秒移动的距离会不一致,造成极强的割裂感
解决办法就是引入Time.deltaTime(增量时间)来帮我们处理这个问题
增量时间的值是随着帧率变动的 假设现在是一秒60帧,那么 Time.deltaTime = 1/60秒;
如果现在是一秒30帧,那么 Time.deltaTime = 1/30秒;
这样就会即使你的帧率每次都有变化,甚至变化很大,它都能确认出一帧所消耗的时间
然后根据这个时间值就能够保证每秒移动的距离都会相等
二、使用步骤
1.角色移动案例
void Update()
{
transform.Translate(0, 0, Time.deltaTime * 10); //物体沿着自身Z轴方向,每秒移动物体10米运动
}
2.错误案例
void Update()
{
transform.Translate(0, 0, 10);
}
这里注意Update方法是每帧执行一次,如果此时每秒60帧,那么Update方法会被调用60次
相当于 10 * 60 = 600米
总结
以上就是今天要记录的内容,本文简单介绍了Time.deltaTime的概念与使用