본문 바로가기

Study/Rider

Rider로 Unity Debugging

디버그 빌드 설정

  • Project Settings > Player > Configuration > Scripting Backend 설정을 Mono로 설정한다.
    • Scripting Backend
      Unity는 C#으로 작성된 스크립트를 실행하기 위해 스크립트 런타임을 제공한다. Scripting Backend는 스크립트를 실행할 때 사용하는 런타임 기술을 말한다. Unity에서는 다음 두 가지 주요 옵션이 있다.
      • 디버깅 환경에서 사용하는 Mono
        • Script Debugging이 가능한 환경에서 Mono를 사용하면, 코드의 동작을 더 쉽게 추적하고 수정할 수 있다.
        • IDE와 완벽히 연동되어 Breakpoint, Call Stack 등 디버깅 기능을 활용할 수 있다.
      • 최적화 및 배포 환경에서 사용하는 IL2CPP
        • 최적화된 성능과 플랫폼 요구사항을 충족시키기 위해 최종 빌드에서는 IL2CPP를 사용하는 것이 일반적이다.
  • Mono는 개발 중 빠른 디버깅과 반복 테스트를 지원하며, IL2CPP는 최종 빌드의 성능 최적화와 플랫폼 호환성을 보장한다. 따라서 개발 단계에서는 Mono를 사용하고, 빌드 및 배포 단계에서는 IL2CPP로 전환하는 방식이 가장 일반적이다.
특징 Mono (JIT) IL2CPP (AOT)
디버깅 및 개발 속도 빠름 (실시간 디버깅 가능) 느림 (코드 컴파일 시간 증가)
최적화 기본적인 최적화 고성능 (C++ 변환으로 네이티브 수준)
빌드 속도 빠름 느림
보안 낮음 (디컴파일 쉬움) 높음
호환성 제한적 (iOS에서 JIT 사용 불가) 모든 플랫폼에서 지원

 

  • Build Profiles > 빌드하고자 하는 플랫폼 > Platform Settings에서 Development Build와 Script Debugging을 활성화한다.

 

유니티 에디터의 우측 하단에, 디버그 모드가 작동되고 있는지 확인한다.

에디터 상에서 스크립트를 띄고, 라이더의 Run / Debug Configurations를 Attatch To Unity Editor & Play로 변경한다.

원하는 지점에 Breakpoint를 설정하고, 벌레 모양을 클릭하거나, Alt+F5를 눌러 디버그 모드를 실행한다.

그럼 에디터 상에서 다음과 같이 정상적으로 디버거가 연결되고 작동됨을 볼 수 있다.

이제 디버깅을 즐겨보자.

 

언리얼은 추후에 따로 정리해서 올리도록 하겠다.