AndEngineで、なうろーでぃんぐ

2013年8月25日日曜日

andEngine

t f B! P L
リソースの先読みのテスト


AndEngine本でも書かれていますが、大きな画像などのリソースを読もうとすると、
一瞬画面が止まってしまいます。

そうならないように、コンストラクタの中でリソースの先読み等をするのですが、
画像データが多い場合この時点でも止まるのを実感するほど処理が重くなります
つまり、シーン切り替えボタンを押してから、一瞬アプリが固まってしまうわけです

そこで、ゲームを起動したときに「データ読み込み中」や「Loading」って画面を作ろうと思います。


AndEngine本のテンプレを使うなら、ResourceUtil.javaにリソース管理のいろいろがすでに用意されているので、結構簡単に作れるように感じます。
早速テストしてみることに。

・テストプロジェクト1
シーン1を起動し画像表示、その後シーン2を起動し画像表示
表示する画像は同じなので、ResourceUtil.javaでちゃんと管理されていれば
二回目の表示には時間がかからないはず
(シーン遷移の際にリソースの解放はしないようにしています)
結果:
シーン1、10枚の大サイズ写真画像を表示⇒読み込み時間1564[ms]
シーン2、10枚の大サイズ写真画像を表示⇒読み込み時間1[ms]


おおーちゃんとロードされてるようです。




しかしこれでは「Loading」の文字を表示させるとか、ローディング中にスピナーを回すとか、プログレスバーを表示させるとかできませんね。
今度は初期処理メソッドに画像のロード処理を書くのではなく、タイマーを起動してその中で読み込ませることにします。

上手くいきました。これでガクガクとはおさらばです。
しかし、ロードの進行状況を文字表示させようと思ったのですが、うまく出来ない・・・
どのタイミングでテキストの反映が行われているのだろうか・・・

Translate

このブログを検索

  • ()
  • ()
もっと見る

QooQ