首页 > 编程知识 正文

unity等待几秒,pygame.time.delay

时间:2023-05-04 15:26:00 阅读:171155 作者:2003

调整Time.timeScale的影响。 1.timeScale不影响更新和更新的执行速度。

2 .由于FixedUpdate是基于时间的,所以timeScale只影响FixedUpdate的速度。

3.Update和LateUpdate不是不受影响吗? 那么为什么要暂停游戏呢? Update和LateUpdate没有停止,而是保持渲染状态。 但是,在您的代码中依赖于Time.deltaTime的逻辑将停止。 因为会变成Time.deltaTime=0。 所以游戏看起来像是被冻结了。

如果将Time.timeScale设置为0,则与帧速率无关的所有事情都会暂停。 这些主要指所有物理事件和依赖于时间的函数、刚度和速度等,FixedUpdate将被暂停。 不是更新。 因为FixedUpdate函数会根据时间更新。

但是,Update函数本身的执行不受Time.timeScale的影响。 Update依赖于你的机器,它的调用次数和你的机器的渲染一样快(特殊情况除外)。 高帧速率的计算机执行Update函数的次数也越多。 因此,如果使用Time.timeScale=0,游戏将显示为冻结状态。 这是因为所有关于时间的事情都被暂停了。 但是,我们的游戏还在渲染中。 也就是说,Update函数还在执行中。 无论Time.timeScale变为多少,都会执行Update和LateUpdate。 所有的动画都是基于时间的。 因为Time.timeScale=0,所以Time.time也不会改变。 如果Time.timeScale为0,则Time.deltaTime为0。 也就是说,如果使用Time.deltaTime控制旋转、位移等,Time.timeScale=0也会停止这些物体的移动。

游戏暂停后,如果希望暂停界面继续播放不受Time.timeScale影响的动画,则必须使用Time.realtimeSinceStartup。

总之一句话,Time.timeScale影响的是Unity游戏时间的缩放。 Unity中与时间有关的东西都是基于timeScale进行运算的。

Time.timeScale影响的是Unity游戏时间的缩放。 Unity中与时间有关的东西都是基于timeScale进行运算的。 仔细想想,现在的手游是动画和粒子技能的特效和UI位移的特效,所以可以改变他们的速度直接在Time.timeScale上完成。

如果我们想暂停游戏,Time.timeScale=0会暂停游戏,Time.timeScale=1会恢复正常,但这是一个作用于整个游戏的设置,不仅是当前场景,根据需要,time.time 当然,也可以使用Time.timeScale进行整体加速,达到游戏的1倍、2倍。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。