0

マルチプラットフォームの HTML5 ゲームの iOS ビルドに取り組んでいます。私は PhoneGap 3.0.0 と Xcode 4.6.3 を使用しており、iOS 6.1.3 を搭載した iPad Mini でテストしています。

ゲームのプレイ中にアプリが中断されると、ゲームは 1 fps で実行されます。メニューでは問題は発生しません。

Apple の Instruments によると、再開後のアプリは、ImageIO の copyImageBlockSetPNG という関数に 90% 以上の時間を費やしています。

このゲームは、大きなスプライト シートと経路探索を備えた一般的な Web ゲームよりも激しいものです。

一時停止イベントを取得するとすぐに webkitRequestAnimationFrame が呼び出されないようにしました。サスペンド時にゲーム テクスチャを解放し、再開時に再度ロードしようとしましたが、成功しませんでした。

うまくいった私の唯一のアプローチは、ゲームの状態を保存し、ページをリロードし、ユーザーの入力を待ってから、進行中のゲームをロードすることです。

フレームレートを落とさずにすぐにゲームを再開する良い方法はありますか?

4

1 に答える 1

0

この問題を処理する方法を見つけました。

スプライト シートをトリミングする必要がありました。テクスチャ サイズを縮小した後、ゲームは通常のフレーム レートに戻る可能性があります...再開に時間をかけた後。

于 2013-09-11T19:42:16.087 に答える