unity核心类-Time

TIme.time 受缩放影响的游戏运行时间

unscaletime 不受缩放影响的游戏运行时间

realtimesincestartup 游戏真实运行时间,从开始到结束的时间

deltatime 一帧开始到一帧结束的时间 受缩放影响

unscaledDeltaTime 不受缩放影响的一帧开始到一帧结束的时间

fixeddeltatime 固定一帧的时间 0.02秒

fixedtime 固定时间 受缩放影响 于time时间差不多一致

Time.timeScale 时间缩放,影响deltatime fixedtime time,关键是deltatime

deltatime会影响fixedupdate

update 渲染刷新 只要有渲染就会刷新

fixedupdate 固定刷新,0.02秒更新一次 但是如果0.02小于实际更新时间就会重复更新

 而实际更新时间受ime.timeScale影响

当ime.timeScale=0时  deltatime就会等于0,就不会进入fixedupdate 物体停止状态

当ime.timeScale=1时  0.02秒一帧更新一次

当ime.timeScale=2时  0.04秒一帧更新两次

当ime.timeScale=3时  0.06秒一帧更新三次

下面的是在update中测试的  在fixedupdate中deltatime就是0.02秒 固定了 而且暂停后也deltatime也是0.02 就测不出来

而deltatime是一帧开始到一帧结束的时间,当time.timeScale=100时 一帧就要更新100次,

所以我这里的deltatime是

 这个是我机器太差太卡了,如果用unity的​​​​​​​​​​​​​​​​​​​​​单步执行 deltatime的时间就是2,受缩放影响的时间也是以2增加

 

以前没有unscaletime不受缩放影响时间 这个方法的时候要自己做

既然是不受缩放影响,那么就是unscaledDeltaTime - deltatime

缩放暂停时 deltatime=0   unscaledDeltaTime - deltatime=不受缩放暂停的时间

如果是正常速度 或者倍速  比如10倍 ,deltatime受缩放影响,得到的是一帧是更新了10次后的时间

那么一帧/10就可以得到 不受倍数影响的时间

Time.unscaledDeltaTime 就是这么做的

此时deltatime/10等到的还是正常速度的 一帧时间,得到正常时间那就可以什么都不用做了,

 this.transform.Rotate(speed * Time.unscaledDeltaTime, 0, 0);

 这个就没啥了

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值