1

最近、非常に奇妙な問題に遭遇しました。iPhone の画面に触れて指を動かすと、FPS の最大 50% が消費される可能性があります。ええ、可能性のあるボトルネックについてコードをチェックしましたが、問題ではありません。この記事を書く前に試した最後の手段は、すべてのタッチ処理コードをコメントアウトしてから FPS を確認することでした。結果:ノータッチ – 58-60. 指に触れて動かす – 瞬時に 35 ~ 40 FPS。

レンダリングは別のスレッドで行われるため、メインの実行ループ イベントが別のスレッドと衝突することはありません。ただし、このような FPS の低下は非常に目立つため、この問題を解決することは私 (および私が開発するゲーム) にとって非常に困難です。

よろしくお願いいたします。

UPDATE:レンダリングスレッドの優先度をより高い値に設定すると少し役立つようです...

4

1 に答える 1

2

iPhone、iPod Touch、およびiPadはすべて、シングルプロセッサ、シングルコアデバイスです。レンダリングコードをタッチイベント処理とは別のスレッドに配置するだけでは(良い考えですが)、タッチ処理がCPUサイクルを消費するのを防ぐことはできません。フレームレートを上げる唯一の方法は、タッチ処理コードを高速化するか、レンダリングを高速化することです。どちらを追求するかは、アプリケーションの詳細によって異なります。

于 2010-06-06T19:36:02.847 に答える