在Unity中,OnUpdate是每帧调用,它的调用时间是和TimeScale无关的。
当TimeScale=0.3时,,deltaTime大致是unscaledDeltaTime的0.3倍。
当TimeScale=3时,,deltaTime大致是unscaledDeltaTime的3倍。
综上,OnUpdate的调用始终以unscaledDeltaTime的时间保持一致,OnLateUpdate同理。
关于Time的另一个坑是unscaledDeltaTime在后台的计时规则:
当我们游戏后台一段时间再回到游戏时的第一帧:
unscaledDeltaTime将会把后台时间也算在内,而deltaTime不会,这将导致我们的unscaled计时器变得不准确。