1

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

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

我更改的代码:

  1. 半径为 1 的 PolyShape 到 CircleShape

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

我的问题:

  1. 如何提高FPS?

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

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

Box2dTest.java 可在此处获得。

谢谢。

4

1 回答 1

2

不要在 Stack Overflow 上询问你的表现去哪里了,而是使用工具或计时器来衡量时间花在了哪里。然后带着数据来到 Stack Overflow,询问如何解决问题。我怀疑你会发现 Box2d 在任何时候都不会使用,但拥有数据比推测更好。

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

于 2013-09-25T20:36:30.740 回答