728x90
반응형
- 개요
Assembly Definition은 코드를 개별적인 컴파일 단위(패키지)로 분리하여 관리하는 도구를 의미한다

기본적으로 유니티에서는 어셈블리를 정의하지 않으면 전체 프로젝트가 하나의 기본 어셈블리로 관리된다

생성하는 방법은 위와 같은데, 폴더를 선택하고 우클릭 - Scripting - Assembly Definition을 선택한다
위와 같은 상황에서 Assembly Definition을 생성하여 사용하면 다음의 장점을 얻을 수 있다
- 컴파일 속도 향상 : 특정 어셈블리의 코드만 수정하는 경우 해당 어셈블리와 이를 참조하는 부분만 재컴파일
- 코드 구조 개선 : 순환 참조를 방지하고 의존성을 명확하게 하여 코드를 더 깔끔하게 작성할 수 있음

생성한 Assembly Definition에서 다른 Assembly Definition의 코드를 사용하려면
Assembly Definition References 리스트에 해당 어셈블리를 추가해야 한다
- Assembly Definition 테스트
1) 테스트의 구성
1 - 1) CompilationTimer 클래스

CompilationTimer 클래스를 추가하여 컴파일 시간을 기록할 수 있도록 구성한다
1 - 2) TinyScript 클래스

TinyScript 클래스는 코드를 간단하게 수정할 목적으로 사용하며 최대한 간단하게 구성한다
1 - 3) HugeScript 클래스 1~5

HugeScript 클래스들은 위와 같이 구성하였으며 총 500줄의 코드로 구성되어 있다
2) Assembly Definition을 사용하지 않는 경우

전체 컴파일에 총 2.61초 소요되었다
3) Assembly Definition을 사용하는 경우

위와 같이 Assembly Definition을 생성하였다

전체 컴파일에 총 0.63초 소요되었다
728x90
반응형
'유니티 엔진 > 유니티 엔진의 구성' 카테고리의 다른 글
| 유니티 엔진의 구성 - 18) Game Object Icon Gizmos (0) | 2026.02.11 |
|---|---|
| 유니티 엔진의 구성 - 17) Resources (0) | 2026.02.03 |
| 유니티 엔진의 구성 - 15) Render Objects (0) | 2026.01.26 |
| 유니티 엔진의 구성 - 14) ProBuilder (0) | 2026.01.22 |
| 유니티 엔진의 구성 - 13) Trail Renderer 컴포넌트 (0) | 2026.01.21 |