0

非常に基本的なデータを含む「モンスター」クラスの大量のインスタンスを必要とするゲームを書いています。

  • 回転角度
  • ダメージの可能性
  • 最大ヘルス
  • 現在の健康状態

そしてそれはそれについてです。ゲームは 60 fps でスムーズに開始しますが、約 50 ~ 60 個のインスタンスが作成されると (同時にアクティブになると)、ゲームは 30 fps 未満に低下します。直し方がわからないので困っています。記録のために、モンスターが含まれている配列とシーンの両方から効率的な方法でモンスターを削除しています (と思います)。

4

1 に答える 1

0

フレームレートを改善する 1 つの方法は、多くのオブジェクトの作成と破棄を避けることです。これは、オブジェクトをプールすることで実現できます。基本的に、ゲームまたはレベルの開始時に必要なオブジェクトを作成し、破壊されたと思われるオブジェクトを非表示にして後で再利用します。

使用しているテクノロジ (投稿で指定していません ^^) に応じて、これを実装するさまざまな方法があります。詳細とヘルプについては、これらのリンクを確認してください: http://gameprogrammingpatterns.com/object-pool.html http://best-practice-software-engineering.ifs.tuwien.ac.at/patterns/objectpool.html および/またはグーグルで検索してください。原理は非常に単純で、非常に簡単に使用できるはずです。

お役に立てれば ;)

編集: また、使用しているテクノロジーによっては、フレームレートを改善するためのより良い方法がいくつかある場合があります. 現在使用している言語/API を提供できれば、おそらくより役立つヘルプが得られるでしょう。

于 2013-05-13T03:06:35.347 に答える