【问题标题】:How can I reset the deltaTime in my p5js sketch to restart the sketch?如何在我的 p5js 草图中重置 deltaTime 以重新启动草图?
【发布时间】:2022-02-25 03:05:37
【问题描述】:

我想重置我的 p5.js 草图。当前的方式会重置我的游戏状态,但不会重置 deltaTime。问题是,我通过 deltaTime 的一个因子来计算我的运动。这意味着如果我重置我的 gameState 并调用 noLoop 函数,deltaTime(计算两帧之间的时间)会继续计数。一旦我重新初始化我的草图并调用循环函数,我就有一个很大的 deltaTime 并且我的对象也有很大的移动。但正如重启应该是,一切都必须从零开始,而不是已经在运动中。

有什么办法可以防止这种行为吗?

如果我的英语很垃圾,谢谢和抱歉

【问题讨论】:

    标签: p5.js


    【解决方案1】:

    为什么在重置 gameState 时调用 noLoop?您应该能够在绘制或循环函数结束时重置 gameState,如果不可能,则 p5js 中的 deltaTime 变量是可变的,因此在再次开始循环之前,您应该能够执行 deltaTime = 0

    【讨论】:

    • 明确设置deltaTime = 0 是我所需要的。如此简单,我喜欢它:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多