반응형
Unity3d C#에서 Debug.Log 디버깅 메시지 출력 함수를
디버깅 / 테스트 때만 출력 되고 릴리즈 일때는
호출 안 되게 할 때 다음과 같이 사용 할 수 있다.
using System.Diagnostics;
[Conditional("DEBUG")]
void PrintDebug(string msg)
{
UnityEngine.Debug.Log( "My App : " + msg );
}
C++에서 #ifdef #else 로 만들어 쓰던 매크로를
Conditional("")로 대체 하여 사용 할 수 있다.
[Conditional("CONDITION1"), Conditional("CONDITION2")]
: 두가지 옵션을 사용 할때
DEBUG 가 디파인 안 되어 있으면 메소드 자체가 호출 되지 않는다.
이렇게 해서 릴리즈 일 때 효율을 올리 수 있다.
단, 디버깅 때 콘솔창의 메시지를 클릭 해도 PrintDebug내로 가기 때문에
직접적인 호출 위치를 찾는데는 도움을 주지 못 한다.
#Unity3d #Debug.Log #전처리기
반응형