멀티 플랫폼 빌드를 목표로 하는 게임엔진으로 빌드과정을 유연하게 하도록 하는 툴.
- Unreal Proejct C++ 소스 빌드과정 총괄
- 다양한 빌드구성
- 빌드 프로세스 자동화 커스텀 툴
- 추장저 소스코드 구조
- 플랫폼 호환성에 맞게 프로젝트 재생성
- 독립적인 빌드 및 스크립트 환경 제공
C# 사용
- 빌드 옵션 관리
- PCH 사용
- 외부 모듈 사용
- 빌드 타입 정의
- 특정 모듈을 빌드에 포함
- 특정 타입의 빌드 결과물 생성
dll, exe
컴파일 전 모든 헤더 파일을 순회하며 리플렉션 시스템에 필요한 정보를 읽어 C++ 컴파일러가 읽기 가능한 코드를 재생성함.
- FileName.generated.h Pasring
- 매크로 정보 저장
generated.h, gen.cpp
- 실행 순서
- 빌드 명령
- UBT 실행
- bulid.cs , target.cs 컴파일
- UHT 실행
- C++ 컴파일러 실행
관련된 데이터와 함수를 하나로 묶은 단위.
- 독립적 컴파일이 가능
분할 컴파일
- 재사용성↑
- 유지보수↑
특정 기능들을 독립된 코드 단위로 캡슐화 한 것
모듈