1

私は libgdx を初めて使用し、libgdx の例 (gdx-test) のコードを変更して自分で学習しています。

Box2DTest を修正したところ、Android で FPS が 60 から 3 に低下したことに驚きました。

変更したコード:

  1. PolyShape から半径 1 の CircleShape

  2. for ループ条件を i<20 から i<120 に変更しました (つまり、20 個ではなく 120 個の形状を作成しました)。

私の質問:

  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 に答える