(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

「デバッグを簡単にして生産性を上げられる」と謳われているEditor Console Proを試してみた【Unity】【アセット】


このエントリーをはてなブックマークに追加

この記事でのバージョン
Unity 2017.1.0f3
Editor Console Pro 3.924


はじめに

現在、Unityライセンス購入時に優良&有料アセット詰め合わせ、エッセンシャルパックが貰えます。

せっかく貰ったのだから試しに使ってみよう!記事にもしてみよう!というのがこの記事の趣旨です。


さて、今回紹介するアセットですが、タイトルの通り

モバイルエッセンシャルに含まれるEditor Console Proです。

説明によるとデバッグを簡単にして生産性を上げられるとの事。



イメージとしては以下のような感じ。控えめに言っても神アセットです。


f:id:kan_kikuchi:20170819080251g:plain


Editor Console Proは出来る事が多々あるので、分かった範囲で機能を列挙していきます。


なお、Editor Console ProはWindowメニューから開く事が出来ます。


f:id:kan_kikuchi:20170818063818j:plain


パッと見はデフォルトのConsoleと似た感じなので、使い方で戸惑う事はなさそうです。


f:id:kan_kikuchi:20170818063928j:plain


ログの色分け


ログの種類の応じて色分けする事が可能です。

ログの種類がより強調されて、見分けが付きやすい!


f:id:kan_kikuchi:20170818064451j:plain


なお、色分けはウィンドウの右上のメニューボタンを押した後、さらにPreferencesを押し、


f:id:kan_kikuchi:20170818064939j:plain


LogsのColorze Logs With filter colorにチェックを入れる事で有効に出来ます。


f:id:kan_kikuchi:20170818064948j:plain


また、Standard Filtersで色を設定できます。


f:id:kan_kikuchi:20170818064956j:plain


ログを検索

ウィンドウ上部の検索窓からログを検索する事が可能です。

必要なログだけを表示できて、かなり便利!


f:id:kan_kikuchi:20170818065447g:plain


なお、検索対象はログのテキストだけではなく、

クラス名やメソッド名での検索も可能で、正規表現も使えます。


該当コードの表示とジャンプ

普通のConsoleだとログが発生した行数が順に列挙されるだけですが、

Editor Console Proならログが発生している実際のコードの表示が可能です。

どのクラスのどの箇所かが表示されるので、分かりやすい!


f:id:kan_kikuchi:20170819072608j:plain


もちろん、該当コードへのジャンプも可能です。


f:id:kan_kikuchi:20170819071511g:plain


オリジナルフィルタ

ログ、警告、エラー等の基本フィルタ以外にオリジナルフィルタを作る事が可能です。

必要な情報を瞬時に選別出来るようになるので、捗る!


f:id:kan_kikuchi:20170818071716j:plain


なお、オリジナルフィルタはCustom Filtersから作成出来ます。


f:id:kan_kikuchi:20170818072757j:plain


また、フィルタの内容はSearchesで設定します。

Search Forでフィルタ(検索)の文言、

Log Typesで対象のログの種類、

Search In Columnsでフィルタの対象を指定します。


ログの改行表示

普通のConsoleだとログが長すぎる場合は表示仕切れなくなりますが、

Editor Console Proならログを改行して表示する事が可能です。

いちいちウィンドウのサイズを伸ばさなくていいので、楽!


f:id:kan_kikuchi:20170819074148g:plain


ちなみにエラーなどのアイコンもちゃんとウィンドウ内に収まるようになっています。


監視

ConsoleProDebug.Watchを使う事で変数等の監視を行う事が可能です。

逐一、値の確認が出来るようになるので、効率的!


f:id:kan_kikuchi:20170819075234g:plain


メソッド除外

特定のメソッドをログから除外する事が可能です。ログが出なくなるわけではありません。

ログのラッパーメソッド等(前述の監視のWatch等)、余計な情報が表示しなくなるので、見易い!


除外の仕方はメソッドの所を右クリックして、Ignore Wrapper メソッド名を選ぶだけ。


f:id:kan_kikuchi:20170819073135j:plain


なお、除外したメソッドの確認や修正はWrapper and ignoreで行えます。


f:id:kan_kikuchi:20170819073141j:plain


メソッドを除外すると、

下部の該当コードに表示されなくなり、ログをクリックした時にそこにジャンプしなくもなります。


f:id:kan_kikuchi:20170819073306g:plain


情報の追加

Columnsからコンソール上に表示する情報(クラス名やメソッド名等)を追加する事が可能です。

詳細を見なくてもある程度把握しやすくなるので、時間節約!


f:id:kan_kikuchi:20170819084034g:plain


ログをテキストで出力

表示されている全ログをテキストファイルとして出力する事が可能です。

ログを控えておく事も出来るので、安心!


f:id:kan_kikuchi:20170819091708j:plain


プログラムからログのClear

ConsoleProDebug.Clearを使う事で表示されているログを削除する事が可能です。

たった1行でプログラムからログをClear出来るので、簡単!

//コンソールのログを全て削除
ConsoleProDebug.Clear();



Editor Console Proにエラーが表示されない?

これは機能ではなく、懸念点として実際使用している時に起こった問題も紹介しておきます。

その問題とはConsoleにはエラーが出るのに、Editor Console Proにはエラーが出ないというものです。


f:id:kan_kikuchi:20170822092433j:plain


おそらく同名で引数が異なっているメソッド(をデリゲートで使った事?)が原因だと思われます。


とは言え、発生したのは一度きりで、発生したとしてもエディタの左下にエラー表記は出るので、

気付かないという事はなく、そこまで気にする必要はないかもしれません。

また、Unity 2017.1.0f3ではこの現象が確認出来ませんでした。(現象が起きたのはUnity5.6.1f1)


一応、現状はEditor Console Proと同じ所にConsoleタブも用意しておいて、

いつでも見れる感じで運用しています。


f:id:kan_kikuchi:20170822093309j:plain


おわりに

上記で紹介した機能以外にも、Consoleだとパッと見で判別出来ない

ErrorとAssetとExceptionが分かれていたり、


f:id:kan_kikuchi:20170821090732j:plain


コンパイル中の表示が大きかったり、


f:id:kan_kikuchi:20170819092758j:plain


設定のエクスポートが出来たり、ツールバーのカスタムが出来たり、ログのコピーが出来たり、

ログの長さで表示幅を変えられたり、フォントの設定が出来たり、etc……、

とにかく多機能です。


しかも多機能のわりに使い難い、分かり難いという事もなく、

エッセンシャルパックに含まれたのも頷ける神アセットでした。