テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

【Unity】知っておくと少し便利な Profiler に関する小技集

今回はプロファイラーの小技についてです。

プロファイラー小技集

プロファイラーを使うとゲームのボトルネックになっている場所を探したり出来ます。
今回は、その機能に関しての幾つかの小技についてです。

tsubakit1.hateblo.jp

CPUとGPUの使用時間を確認

CPU UsageとGPU Usageが出ている時に、CPUとGPUの使用時間が確認出来ます。

これが16.msを超えてたら60FPSを割ってますし、33msを超えてたら30fpsを割っています。超えてない方を減らすことは(消費電力以外では)意味が無いので、FPSが欲しいなら超えてる方を削ります。

f:id:tsubaki_t1:20170326204417j:plain

表示する項目を増やす・減らす

プロファイラの項目右上にある「☓」ボタンで、プロファイラの項目を閉じる事が出来ます。逆に Add Profilerトグルボタンで、消したプロファイラの項目を表示する事が出来ます。

 

プロファイラの項目の高さは拡縮出来ないので、よく中身を見たい時等に便利です。

なお、表示していないと情報がたまらないプロファイラの項目もあります。

f:id:tsubaki_t1:20170326194646j:plain

CPUプロファイラの表示項目を隠す

CPU Usageの項目では、プロファイラが表示しているカテゴリを有効・無効にする事が出来ます。

Others等は条件によっては無視しても良い(しかも上下しやすい)項目なので、非表示にしても良いかもしれません。

f:id:tsubaki_t1:20170326194951g:plain

また表示項目も減らせます。項目を右クリックすると表示する項目一覧が表示されるので、チェックされている項目を減らせば非表示になり、スッキリします。

特に現状ほぼ機能してるとは言えない Warningの項目は、無くても良いです。

f:id:tsubaki_t1:20170326200035j:plain

CPUプロファイラの表示順を変更する

CPU Usageに表示しているグラフの項目順序を変更します。

VSyncのような「CPUの余り時間で上下する項目」がグラフの下の方にあるとグラフが非常に見難くなります。こういった項目は順番を上の方にして置いたほうが良いです。

f:id:tsubaki_t1:20170326195214g:plain

負荷のあるオブジェクトがドレかを確認する

Referenced Objectの項目で、オブジェクトを選択すると、どのオブジェクトが負荷を計上してるのかを確認出来ます。

当然、オブジェクトが消滅してしまったら追えません。

f:id:tsubaki_t1:20170326203138g:plain

Timelineで表示する

CPU Usageの項目をタイムラインベースで表示します。

一見負荷が高くても別スレッドで処理しててメインには少ししか関係無かったり、逆に処時間が少なくてもコア全て使って一斉に計算してたりする項目が見つけられます。

f:id:tsubaki_t1:20170326201451j:plain

選択項目に合わせてTimelineの範囲をズームする

項目を選択してFキーを押すと、選択中の項目が画面いっぱいになるようにズームします。逆に何も選択していなければ1フレームになるようにズームします。

f:id:tsubaki_t1:20170326201643g:plain

アセットを参照してるオブジェクトを探す

予定にないアセットがロードされてる時、どのコンポーネントがロードしているのかを確認出来ます。

tsubakit1.hateblo.jp

Pforilerのプロファイリング内容をSave&Loadする

たしか5.6から、PforilerにSaveとLoadが追加されました。

以前はリモートのプロファイリング内容は実機側で保存する事しか出来ませんでしたが、SaveとLoadが付いたのでエディター側でも保持出来るようになったっぽいです。

f:id:tsubaki_t1:20170326203632j:plain

qiita.com

関連

tsubakit1.hateblo.jp

tsubakit1.hateblo.jp