Unity中关于Time.timeScale中让人混淆的详解

在Unity中timeScale是对应下列问题的

1、timeScale不影响Update和LateUpdate,会影响FixedUpdate。
2、timeScale不影响Time.realtimeSinceStartup,会影响Time.timeSinceLevelLoad和Time.time。
3、timeScale不影响Time.fixedDeltaTime和Time.unscaleDeltaTime,会影响Time.deltaTime。

怎么说?

例如: 设Time.timeScale=5;

你在Update LateUpdate  FixedUpdate 中分别打印一句话

结果就是   在Update LateUpdate 中打印的次数没有发生什么变化,时正常的打印,在FixedUpdate打印的次数是正常情况下的5倍

Time.timeScale也误导了我很久,为什么这么说呢?我原先一直以为Time.timeScale = 0 的话所有的Update都不执行了。今天测试了一下发现原来不是这样的,无论Time.timeScale 等于多说Update和LateUpdate都会去执行,不信你可以自己做个实验看看.

 

凡是游戏中和Time.timeSinceLevelLoad和Time.time  Time.deltaTime。挂钩则可以使用Time.timeScale 如一些任务移动控制

相机慢镜头等等

就简单的说这么多了

你可能感兴趣的:(Unity中关于Time.timeScale中让人混淆的详解)