Unity의 Debug 기능을 편리하게 만들고 싶습니다! 소개편

7652 단어 Unity3DC#Unity

현재 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 주시면 고맙습니다!

좋은 웹페이지 즐겨찾기