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의 처음 두 줄은 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 게임!
공식 트위터의 팔로우 잘 부탁드립니다!
트위터 : htps : // 라고 해서 r. 코 m / P ぁ y 짱 sg 로우 d
3D 디자이너와 Unity 엔지니어 등도 모집하고 있으므로, 흥미가 있으면 꼭 TwitterID: @harumar0n
에 DM 주시면 고맙습니다!
Reference
이 문제에 관하여(Unity의 Debug 기능을 편리하게 만들고 싶습니다! 소개편), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/HarumaroJP/items/bc5c49bf7c229fc24346
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Debug.Log(new string[] {"a", "b", "c"});
void Start() {
string[] wordArray = new[] {
"apple",
"blue",
"cactus",
"default",
"emission"
};
DebugEx.Log(wordArray);
}
void Start() {
Dictionary<string, int> dict1 = new Dictionary<string, int>() {
{"normalSword", 5},
{"superSword", 2},
{"apple", 100},
{"water", 1}
};
DebugEx.Log(dict1);
}
DebugEx.RecordStart();
処理
DebugEx.RecordStop();
DebugEx.ClearConsoleAll();
"Alpha".Color(Color.red) //色の変更
"Bravo".Bold() //太字にする
"Charlie".Italic() //イタリック体にする
"Delta".Size(12) //文字のサイズを変更する
"Echo".RemoveRichText(); //リッチテキストを取り除く
Reference
이 문제에 관하여(Unity의 Debug 기능을 편리하게 만들고 싶습니다! 소개편), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/HarumaroJP/items/bc5c49bf7c229fc24346텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)