ばかげた単純な XNA ゲームを作成しましたが、何らかの奇妙な理由で速度が低下します。FPS カウンターを作成したところ、FPS が 60 秒から 2 秒に低下しました。ドロップにかかる時間は、画面に配置した「ブロック」(単純なオブジェクト) の数に反比例します。
これが私が試したものです:
- 基本的なゲーム テンプレートに追加したすべてをコメント アウトする (1 つずつ)
- FPS カウンターのみで空のゲーム プロジェクトを作成し、ドロップするかどうかを確認します。それはしませんでした。
- ヘルプなしで IndieFreaks Game Profiler をインストールしました (下の図)。
プロファイラー実行中のゲームのスクリーンショット Game1.Update がすべてのメモリを使用していると表示されますが、その中のすべてのメソッドは何も使用していません。どうすればいいの?
また、非常に単純なゲーム コード以外に、以前に作成した別のプロジェクトを使用して、すべてのゲームに使用していることにも言及しておく必要があります。ゲームオブジェクトの派生元となる基本的なタイプ、単純なリソースマネージャー、衝突検出メソッド、入力ハンドラーなどを提供します。これについて言及しているのは、そこからのいくつかのメソッドが魔法のように何らかの形でメモリを使い果たす可能性があるためです。
だから私は、ゲームが遅くなる一般的な明白ではない理由を求めていると思います. または、FPS を殺している原因を見つけるためにできることについてのヒント。
編集:上記の「他のプロジェクト」のため、コードをアップロードするのをためらっていました。これはコメントされていないコードの束であり、すべてがどのように機能するかを説明するドキュメントはありません。必要なようですので、ここに私のコードがあります:LINK
Wormhole プロジェクト (前に述べたもの、何らかの理由でそれが呼ばれているもの) を含めたので、そのコードを見ることができます。また、Wormhole と Indiefreaks Game Profiler への参照は、私の PC と同じ場所にないため、機能しないと思います。オンラインでコードを読むことができるように、Google ドライブにアップロードしました。ワームホールに関する提案は大歓迎です。