【问题标题】:Box2D collision causes huge FPS dropBox2D 碰撞导致巨大的 FPS 下降
【发布时间】:2013-05-21 10:00:51
【问题描述】:

我正在使用Box2Dweb 和 HTML5 画布,并且遇到了一些奇怪的行为。 在这个世界上,我有一个动态的身体和一个静态的身体。我可以用键盘控制动态的。

但是一旦这两者发生碰撞,我就会从 60 fps 下降到 17,并且我不能再移动动态体(由于滞后,它会移动)。

我尝试使用 Firebug 对其进行分析,您可以在此处查看结果:http://i.imgur.com/sNE6OXg.png

如您所见,这里几乎只是 Box2D 占用了时间;我自己的渲染/清除/处理函数直到表中的 0.1% 才列出。

如果您需要任何示例代码,请告诉我!我发现其他人有同样的问题herehere,但他们没有得到任何答案。所以我再试一次!

【问题讨论】:

  • 你使用一些碰撞处理程序吗?
  • 是的,我正在创建一个 ContactListener。但是,我尝试将其注释掉,但没有区别。

标签: html canvas box2d collision frame-rate


【解决方案1】:

我发现了问题! 它与 PPM(每米像素数)有关。

原来我将它设置为相当低(32),当我将它增加到 192 时,一切又运行顺利了!感谢上帝。希望这可以帮助其他人!

【讨论】:

  • 你知道为什么 PPM 会导致低 FPS 吗?
  • 其实没有。我的猜测是它也与你的游戏世界的大小有关。拥有非常低的 PPM 意味着您可以在您的世界中容纳“更多像素”。也就是说,模拟更多的数据。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-10-30
  • 1970-01-01
  • 2012-06-10
  • 2013-02-02
  • 2017-11-01
  • 1970-01-01
相关资源
最近更新 更多