世界上有更多的body,FPS速度慢



我是libgdx的新手,我自己通过修改libgdx示例中的代码(gdx-test)来学习它。

我修改了Box2DTest,惊讶地发现Android中的FPS从60下降到3。

我更改的代码:

  1. 多边形到半径为 1 的圆形

  2. 将 for 循环条件从 i<20 修改为 i<120(即创建 120 个形状而不是 20 个)。

我的问题:

  1. 如何提高帧率?

  2. 我们可以添加到世界上的身体数量是否有任何限制?

  3. 大多数演示游戏根本不使用Box2D。为什么他们自己进行所有物理计算而不是使用Box2D?它会提高性能吗?

Box2dTest.java 可在此处获得。

谢谢。

与其在 Stack Overflow 上询问您的性能去了哪里,不如使用工具或计时器来测量时间花在哪里。 然后来到 堆栈溢出 带着数据询问如何解决问题。 我怀疑你会发现Box2d在任何时间都没有使用,但有数据比推测更好。

对于Android上的Libgdx,DDMS是一套漂亮的工具,并且很好地集成到Eclipse中。 我将从方法分析和堆跟踪开始。

最新更新