Time 主要用于游戏中位移、计时、时间暂停等。
1.时间缩放比例
// 时间停止
Time.timeScale = 0;
// 回复正常
Time.timeScale = 1;
// 2倍速
Time.timeScale = 2;
2.帧间隔时间
// 帧间隔时间 主要是用来计算位移:路程 = 时间*速度
// 受scale影响
print("帧间隔时间" + Time.deltaTime);
// 不受scale影响
print("不受scale影响的帧间隔时间" + Time.unscaledDeltaTime);
// 两者关系: Time.deltaTime = Time.unscaledDeltaTime * Time.timeScale
3.游戏开始到现在的时间
// 主要用来计时,一般用在单机游戏中
// 受scale影响
print("游戏时间" + Time.time);
// 不受scale影响
print("不受scale影响的游戏时间" + Time.unscaledTime);
4.物理帧间隔时间(FixedUpdate)
private void FixedUpdate() {
// 受scale影响
print("物理帧间隔时间" + Time.fixedDeltaTime);
// 不受scale影响
print("不受scale影响的物理帧间隔时间" + Time.fixedUnscaledDeltaTime);
}
5.帧数
// 游戏从开始到现在游戏跑了多少帧
print(Time.frameCount);
void Update()
{
#region 知识点一 时间缩放比例
// 时间停止
Time.timeScale = 0;
// 回复正常
Time.timeScale = 1;
// 2倍速
Time.timeScale = 2;
#endregion
#region 知识点二 帧间隔时间
// 帧间隔时间 主要是用来计算位移:路程 = 时间*速度
// 受scale影响
print("帧间隔时间" + Time.deltaTime);
// 不受scale影响
print("不受scale影响的帧间隔时间" + Time.unscaledDeltaTime);
// 两者关系: Time.deltaTime = Time.unscaledDeltaTime * Time.timeScale
#endregion
#region 知识点三 游戏开始到现在的时间
// 主要用来计时 单机游戏中计时
// 受scale影响
print("游戏时间" + Time.time);
// 不受scale影响
print("不受scale影响的游戏时间" + Time.unscaledTime);
#endregion
#region 知识点四 物理帧间隔时间 FixedUpdate
#endregion
#region 知识点五 帧数
// 从开始到现在游戏跑了多少帧
print(Time.frameCount);
#endregion
}
private void FixedUpdate() {
#region 知识点四 物理帧间隔时间 FixedUpdate
// 受scale影响
print("物理帧间隔时间" + Time.fixedDeltaTime);
// 不受scale影响
print("不受scale影响的物理帧间隔时间" + Time.fixedUnscaledDeltaTime);
#endregion
}