我是libgdx的新手,我自己通过修改libgdx示例中的代码(gdx-test)来学习它。
我修改了Box2DTest,惊讶地发现Android中的FPS从60下降到3。
我更改的代码:
-
多边形到半径为 1 的圆形
-
将 for 循环条件从 i<20 修改为 i<120(即创建 120 个形状而不是 20 个)。
我的问题:
-
如何提高帧率?
-
我们可以添加到世界上的身体数量是否有任何限制?
-
大多数演示游戏根本不使用Box2D。为什么他们自己进行所有物理计算而不是使用Box2D?它会提高性能吗?
Box2dTest.java 可在此处获得。
谢谢。
与其在 Stack Overflow 上询问您的性能去了哪里,不如使用工具或计时器来测量时间花在哪里。 然后来到 堆栈溢出 带着数据询问如何解决问题。 我怀疑你会发现Box2d在任何时间都没有使用,但有数据比推测更好。
对于Android上的Libgdx,DDMS是一套漂亮的工具,并且很好地集成到Eclipse中。 我将从方法分析和堆跟踪开始。