UnityのDebug機能を便利にしたい!紹介編
現状のUnityEngine.Debugの問題
皆さんUnityのDebugクラスよく使いますよね? Debug.Log()
とか。
でもたまに不便だな~って思う時ありません?
配列を表示したい時とか
Debug.Log(new string[] {"a", "b", "c"});
↑配列なことぐらいわかってるわ!要素が欲しいんじゃ!
こういう場合はforeachなどで回すか、LINQでゴニョゴニョするとかしか無いんですよね、、、
非常にめんどくさい!!
というわけで作りました。その名もDebugExtentions!
まだ制作途中で、機能が豊富とは言えませんが、一部をgithubに公開いたしましたので今回はそれをご紹介したいと思います。
DebugExtensions機能一覧
・普通のDebugクラスの機能全部(もしかしたら実装漏れがあるかも)
・命名の関係上ClearDeveloperConsole()
→ ClearConsoleError()
になっています。
・多少制限はあるけど、structも表示できます。
・Colorクラスの表示が見やすくなった
・Array, List, HashSet, Dictionary
の要素表示(Format系は対応してないですごめんなさい、、)
・ログのテキスト保存
・コンソール全クリア
・リッチテキストを簡単に使えるぞ
1. Array, List, HashSet, Dictionaryの要素表示
個人的に一番最初に実装したかった機能。
こんな感じで表示されます。
Array・List・HashSet
void Start() {
string[] wordArray = new[] {
"apple",
"blue",
"cactus",
"default",
"emission"
};
DebugEx.Log(wordArray);
}
Dictionary
void Start() {
Dictionary<string, int> dict1 = new Dictionary<string, int>() {
{"normalSword", 5},
{"superSword", 2},
{"apple", 100},
{"water", 1}
};
DebugEx.Log(dict1);
}
Dictionaryの冒頭2行は、KeyとValueの型情報を表示してくれています。
突っ込むだけで、簡単に要素を表示してくれるのでかなり便利になりました。
しかし、筆者の表示形式のセンスが無いので、あまり統一感がありません。
この表示形式は、これからのアップデートで改善していく予定です。
2. ログのテキスト保存
DebugEx.RecordStart();
処理
DebugEx.RecordStop();
RecordStart()
とRecordStop()
の間で、ロギングが行われた場合、情報が保存されます。
RecordStop()
が実行されたときに保存されるので注意。
デフォルトではDebugExtensions/Logs
に保存されますが、設定で変えることができます。
3. コンソール全クリア
DebugEx.ClearConsoleAll();
その名の通り、まとめてログを全削除します。
4. リッチテキストを簡単に使えるぞ
"Alpha".Color(Color.red) //色の変更
"Bravo".Bold() //太字にする
"Charlie".Italic() //イタリック体にする
"Delta".Size(12) //文字のサイズを変更する
"Echo".RemoveRichText(); //リッチテキストを取り除く
Consoleではリッチテキストを使うことができるので、string型の変数に上記のようなメソッドを連結することで、リッチテキストに変換することができます。
コンソールの文字をちょっといじりたいときなどに便利です。
5. その他設定
LogSavePath: ログファイルを保存するパス
SaveStackTrace: ログの下の部分にくっついている、呼び出し元のトレース情報をログファイルに書き込むか
Dictionary Key,Value: Dictionaryをコンソールに表示するときの色
最後に
結構頑張ればもっと使いやすくなると思うので、これからブラッシュアップしていけたらなと思います。
リリースできるようになれば、アセットストアなどに出す予定です。
!!告知!!
現在、チームでShoutousというFPSゲームを開発しています!
~Shoutousとは?~
◉大規模な現代戦を題材にした
◉どんな遊び方でも皆活躍できる
◉今のFPSの良いとこ取りをした
◉e-Sports味の全くない、貴方の為の
◉意識低い系高画質お祭りFPSゲーム!
公式ツイッターのフォローよろしくお願いいたします!
Twitter: https://twitter.com/PlayChaosground
3Dデザイナーや、Unityエンジニアなども募集しているので、興味があればぜひTwitterID:@harumar0n
にDMいただけるとありがたいです!
Author And Source
この問題について(UnityのDebug機能を便利にしたい!紹介編), 我々は、より多くの情報をここで見つけました https://qiita.com/HarumaroJP/items/bc5c49bf7c229fc24346著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .