こんにちわ、Unityエンジニアのオオバです。

アセットストアにConsole Enhanced Freeというアセットが販売されています。

UnityアセットConsole Enhancedが超絶便利な件_0

その名の通りコンソールを拡張したアセットです。
これを使いだして既存コンソールを使うことが一切なくなりました。フリーなのに欲しかった機能が揃っていて、目から鱗です。フリーなのに。

そんなConsole Enhanced Freeの魅力を説明していきます。

ログ出力時間の表示

仕込んだログが出力された時の時間を起動タイミングからの時間で出力してくれます。

IEnumerator Start () {  
    yield return new WaitForSeconds(3f);  
    Debug.Log("Shibuya24");  
}

↓3秒後に表示されるログ。

UnityアセットConsole Enhancedが超絶便利な件_1

どこで処理に時間がかかっているかを別途タイマーログを仕込まなくてもConsoleEnhancedを見るだけで確認できるのは非常にありがたいです。

UnityアセットConsole Enhancedが超絶便利な件_2

初期状態では出力時間は表示されていません。表示させるためには上図の Eボタン を押してください。

ログの検索可

待望のログ検索が可能になります。

UnityアセットConsole Enhancedが超絶便利な件_3

このようにコンソールウィンドウの上部に検索用テキストフィールドが付いています。

検索したいキーワードを入力しておくと、フィルタリングされて表示されます。

public static class LogUtility  
{
    /// ロードに関連したログを出す時に使用  
    public static string Load(string obj)  
    {
        return string.Format("[Load]{0}", obj);  
    }
}

このようにログ生成処理に一手間加えれば、カテゴリ分けされたログだけ表示でき、デバッグ時に重宝するでしょう。またログの色を変更すると尚見やすくなると思います。

使用例

Debug.Log(LogUtility.Load("Shibuya24"));  

細かいデザイン変更

UnityアセットConsole Enhancedが超絶便利な件_4

2行表示、フォントのサイズ、Paddingの調整、アイコンスキン等、いろいろと自分に合ったコンソールに調整が可能です。

ログ更新が滑らか

Unity5.3辺りから、ログの更新がされない現象がおきています、コンソールウィンドウをクリックすれば更新されます。
おそらくエディタの更新イベントに変更が入ったのかもしれません。

このバグ?もConsole Enhancedでは修正されています。

※こちらのログ更新挙動はUnity5.4のどこかのタイミングで修正されています。オオバが現在使用している5.4.2f1, 5.4.1p4では改善済み。

まとめ

フリーなので是非試してみたほうが良いオススメのアセットです。
オオバはビルトインのコンソールをもはや起動する理由がなくなりました。
どんな小さなプロジェクトだとしても必ずインストールしておきたい必需品です。

また、Proバージョンも魅力的で、さらなるカスタマイズができそうです。

オススメ記事
検証環境