Unity5でスマホのカクカク動作をなめらかに

 2015-06-14
Unity5で作ったスマホゲームを出す前、
出来あがったゲームを実機でテストプレイしたときに、
重すぎてカクカクすぎて、まともにゲームにならないという
困った事態になっていました。

このとき、使っていたのが処理の重くなりがちな3Dモデルだったんですが、
処理を軽くするために、色々手を加えないといけないみたいです。
なので、今回試したことをここでメモっときます。


まず、上のメニューからAssets → Project Settings → QualityでQualitySettingsを出します。

Quality1.jpg
ここで画質のクオリティが選べるようです。
上にいくほど軽くなるが表示も汚くなるという…
ってことで、上から2番目のFastにしておきました。
最新機種のスマホならGoodやBautifulでもできるのかもしれませんが、
持ってないのでワカリマセン。

影の表示も重くなる原因なので、OFFにしておきました。
詳しくは公式リファレンスのこちらへ↓
http://docs.unity3d.com/ja/current/Manual/class-QualitySettings.html


次にテクスチャのサイズを小さくしたり、シェーダーの設定を変えます。

3Dモデルで使われているテクスチャやスプライトを選びます。
●テクスチャ
Quality2.jpg
Max Sizeでテクスチャのサイズを変更できるので、デカいサイズの場合は小さくしておきます。
あまりに小さくしすぎるとボヤけたような表示になってしまいますが、
特に重要ではないモデルなら、少しでも軽くしたほうがよいかと。

●シェーダー
Quality3.jpg
Mobileの中から選んで、少しでも軽いshaderに変更しておきました。
公式で用意してくれてるものですから、普通のシェーダーより軽いはずです…たぶん。
詳しくはこちら公式リファレンスで↓
http://docs.unity3d.com/ja/current/Manual/shader-Performance.html


最後に垂直同期とFPSを操作して、さらにゲーム動作をなめらかにさせます。
垂直同期? FPS?ってなんじゃそれは?って人は検索で調べてみてください。


スクリプト


C#で新規にスクリプトを作って名前を『GameSpeed』に。
Create Emptyで作ったオブジェクト(名前はなんでもいい)にスクリプトを貼りつけました。
Quality5.jpg
Speed_ONのチェックをつけることでなめらかに動作するようになります。
なめらかに動いてくれないと困るアクションシーンなどではONに。
逆に会話シーンなど、なめらかな表示でなくていい場合は、OFFにできるようにしました。
こうすることでスマホの電池の消費を抑えられるかも?


とりあえず、これらを行うことで動作は改善し、カクカクした動作はなくなりました。
もし直らなかったら3Dモデルを全部2Dに直す羽目になるとこでした。
いやーよかった。

(カクカクした動作になるのはUnity5からっぽい?
Unity4でスマホゲーを作ったことがないので、そのへんはちょっとわからないですが…)
 
 
タグ :
コメント












管理者にだけ表示を許可する
トラックバック
トラックバックURL:

http://unimake2.blog.fc2.com/tb.php/39-207f7a7c

≪ トップページへこのページの先頭へ  ≫