如何重置 p5js 草图中的 deltaTime 以重新启动草图?

How can I reset the deltaTime in my p5js sketch to restart the sketch?

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

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

谢谢,对不起,如果我的英语很垃圾

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