Workspace/Unity3d
[Unity3d] 전처리
Bombus
2023. 3. 24. 17:02
[C#] Warning 숨기기 에 이어서 Unity3d 환경에서 Warning을 숨길 수 있는 방법을 알아보자.
C# 포스팅에선 Warning disable을 기준으로 전처리에 대한 내용을 정리했다면, Unity3d에선 커스텀 스크립팅 심볼까지 추가적으로 알아보자.
| RSP 파일을 통한 설정
// 커스텀 Define Symbol 정의
-define:FOO_BAR
// Warning Disable
-nowarn:1234
우선 전처리 지시문을 작성한 뒤
csc.rsp 파일을 <ProjectPath>/Assets 폴더 하위 위치시키면 된다.
※smcs.rsp, mcs.rsp 파일을 지원 중단 예정
| 에디터를 통한 설정
File > Build Settings > Player Settings > Player > Script Compilation / Additional Compiler Arguments

- 커스텀 Define Symbol의 경우 Scripting Define Symbols 섹션에 `+` 버튼을 클릭 후 내용을 입력
- 추가적인 컴파일 인수는 Additional Compiler Arguments 섹션에서 `+` 버튼을 클릭 후에 지정
- 커스텀 스크립팅 심볼 - Unity 매뉴얼
| 스크립트를 통한 설정
- PlayerSettings.SetScriptingDefineSymbolsForGroup
- BuildPlayerOptions.extraScriptingDefines
- Build.Player.ScriptCompilationSettings-extraScriptingDefines
위 3가지 API를 사용해서 스크립팅 심볼을 정의할 수 있다.
다만, PlayerSettings.SetScriptingDefineSymbolsForGroup 의 경우 주의 사항이 몇 가지 있다.
- 해당 메서드는 즉시 적용되지 않고, 스크립트를 다시 컴파일 하지 않음
- 배치 모드에서 헤드리스로 실행되기 때문에 editor loop(스크립팅 심볼이 다시 컴파일 되는)가 발생하지 않음
따라서 즉시 적용하려면 csc.rsp 파일을 비동기적 상황에선 API를 이용해야 한다.
| 관련
반응형