Unity提供了丰富的时间处理功能,这里会展示部分的时间相关的函数。
// 时间缩放比例
Time.timeScale = 0; //时间停止
Time.timeScale = 1; //时间恢复
Time.timeScale = 2; //2倍速
Time.deltaTime //完成上一帧所用的时间(以秒为单位)(受scale影响)(一般用于计算位移等)
Time.unscaledTime //完成上一帧所用的时间(以秒为单位)(不受scale影响)
Time.fixedDeltaTime //执行物理或者其他固定频率更新的时间间隔
Time.timeSinceLevelLoad //自游戏启动以来的总时间(以物理或者其他固定帧率更新的时间间隔累计计的)
Time.time //游戏开始以来的总时间(包括时间暂停等时间,受scale影响)
Time.realtimeSinceStartup(不包括时间暂停等时间,不受scale影响)
Time.smoothDeltaTime //经过平滑处理的time.deltaTime(电脑性能不佳时,可能出现跳帧现象,使用这个函数可以避免)
Time.fixedDelatTime //物理帧间隔时间(受scale影响)
Time.fixedUnscaledTime //物理帧间隔时间(不受scale影响)