유니티 Debug.Log 유틸리티 #2

오늘은 전편보다 3가지의 기능이 더 추가된 Debug.Log 유틸리티에 대해 소개해드리고자 합니다!

2023.07.27 - [Unity/Study] - 유니티 Debug.Log 유틸리티

 

파일은 위 포스팅에 들어가셔서 Git을 통해 다운로드하시면 됩니다!

 

Git을 통해 업데이트 내용을 다루기엔 블로그 포스팅 내용과 겹쳐서 앞으론 Tistroy블로그에 패치 내용을 적어볼까 합니다!


추가된 내용

  1. 메서드 실행순서 디버깅
  2. 실시간 시간 디버깅
  3. 함수의 실행 시간 디버깅

메서드 실행순서 디버깅

DebugUtils.LogMethodCall();

이 유틸리티 함수는 어떤 함수가 먼저 실행되는지 순서를 알고 싶을 때 사용하면 됩니다.

 

예를 들어

 private void Start()
   {
      A();
      C();
      B();
   }
   
 private void A()
   {
      DebugUtils.LogMethodCall();
   }
   
   private void B()
   {
      DebugUtils.LogMethodCall();
   }
   
   private void C()
   {
      DebugUtils.LogMethodCall();
   }

위와 같이 A, B, C 함수가 존재할 때 어떤 함수가 먼저 실행되는지 파악할 때 확인용도로 사용할 수 있습니다.


실시간 시간 디버깅

DebugUtils.LogWithTimestamp();

위 유틸리티 함수의 경우 특정 Log가 출력된 시간을 알고자 할 때 사용하면 됩니다.

private void Start()
   {
      DebugUtils.LogWithTimestamp("안녕하세요");
   }


함수의 실행 시간 디버깅

DebugUtils.LogExecutionTime();

위 유틸리티 함수는 특정 함수의 실행시간을 파악할 때 사용되는 함수입니다. 

private void Start()
   {
      DebugUtils.LogExecutionTime(LongRunningMethod);
   }
   
   
   private void LongRunningMethod()
   {
      for (int i = 0; i < 1000; i++)
      {
         DebugUtils.LogColorPart($"1~1000까지 반복중, 현재 {i}", i.ToString(), Color.cyan);
      }
   }

디버깅 유틸리티 함수를 통해 이 함수는 43ms가 소요된 것을 쉽게 확인할 수 있었습니다!  

 

앞으로도 프로젝트하다가 도움이 될법한 유틸리티 디버깅 함수가 떠오르면 업데이트할 예정입니다!