このブログでも何回か書いていますが、女子高生が校門の前で銃を乱射するというゲームを作っています。
こう書くと非常に物騒な感じですね…レーティングとか色々大丈夫なのか心配になってきますね…(^_^;)

で、ゲームの骨格が結構出来てきたので、実機で動かしてみたところ、動作がカクカクして見るに耐えません…。
私の使用しているAndroidの端末が古いということもあるのですが、古い端末を使用されている方でも、それなりには遊べるようにしたいところです。

特に弾丸などの新しいオブジェクトを生成して表示する際に時間がかかっているようで、その動作がある度にフレームが飛んでしまいます。

今までまったく知らなかったのですが、Unityには色んな情報を見られる機能があるんですね。
以下のページを見て、どんな状態なのかを確認してみました。
Unity 5 Proとなっていますが、Unity 5ならフリー版でも問題なく使えます。

Unity 5 Proの新機能FrameDebuggerでグラフィックパフォーマンスを改善する

ゲームビューにあるStatsというボタンを押すと、色々な情報が見られます。
詳しくは私も知らないのですが、色々なオブジェクトをアクティブ化したり非アクティブ化したりすると数字が変わるので、それを参考にすれば良さそうです。
細かいことはいつか勉強しましょう。

Unity_stats

ただ、上記のStatsで見られるのは、当然Unityエディタ上での情報です。
参考にはなるのですが、重要なのは端末での動作ですね。
端末の方については、こちらのページで紹介されていたスクリプトを使用しました。

【Unity】メモリ使用量とか、FPSとか、色々表示するスクリプト:ほんにゃら重工

スクリプト
AllocationStats.cs

スクリプトを保存して、適当なゲームオブジェクトにアタッチするだけなので、とても簡単です。

 fps

フォントサイズとか調整していないので見づらいかもしれませんが、状態の把握が出来ればいいので私的にはオッケーです(阿武隈)。

上記の画像では30.1FPSと表示されていますが、調整前は9~26FPSあたりを行ったり来たりしていました。
不必要なオブジェクトを非アクティブ化したり、都度生成していたプレハブを最初に一括で生成して使いまわしたりしたところ、動作もかなり軽くなりました。

やはり情報を確認できるというのはいいですね。
多分情報可視化ツールはたくさんあると思いますし、自作もそれほど手間ではないと思うので、自分にあったものを見つけるなり作るなりしてください。

相変わらずレベルの低いブログですが、一歩ずつ進んでいきたいと思います。
ちなみに上記の女子高生銃乱射ゲームのタイトルは「ガンナーズハイ 学年ビリのギャルが40人倒して合格を目指す話」となりました。
なるべく早く完成させられるようにがんばります!

icon512