HTML5 Game with Phaser.io: 高速,精灵不会碰撞

HTML5 Game with Phaser.io: High speed, sprite will not collide

我和我的团队正在使用 Phaser.io 框架开发 HTML5 游戏。 现在我们遇到了一个问题,因为我们把子弹的速度提高了。

this.game.physics.arcade.collide(this.objects.cups, this.obstacleLayer, this.destroy, null, this);

这是函数调用,我们的子弹(名为杯子)应该与 obstacleLayer(墙壁所在的位置)发生碰撞。

您可以运行我们的实际版本有问题here。 您可以使用 WASD 四处走动并单击鼠标进行射击。

问题是,子弹有时会撞到墙壁,有时不会。我们试图弄清楚它们在哪种特殊情况下会发生碰撞,但我们无法定位实际问题。

为了发射我们使用的子弹

this.game.physics.arcade.moveToPointer(cup, 4000);

4000是速度。问题发生在更高的速度,例如速度为 100 它将起作用。但是我们的子弹速度至少需要2000。

希望你能帮助我们,

提前致谢

这里是phaser.io核心定时器的源代码https://github.com/photonstorm/phaser/blob/v2.4.4/src/time/Time.js

正如 Vladimirs 在评论中所述,您必须增加计算的 fps 速率(不是显示的)或减少 msMax 值