언리얼 빌드 시스템

엔진 및 게임 프로젝트를 컴파일하는 데 사용되는 언리얼 엔진의 커스텀 빌드 시스템입니다.

Windows
MacOS
Linux

언리얼 빌드 시스템

Unreal Build System (언리얼 빌드 시스템)은 언리얼 엔진 4 (UE4) 빌드 프로세스를 자동화시키는 툴 모음을 말합니다. 일반적인 수준에서 UnrealBuildTool 과 UnrealHeaderTool 은 언리얼 빌드 시스템을 지원합니다. 여기서는 UnrealBuildTool 과 UnrealHeaderTool 을 개괄적으로 설명해 드리고, UE4 의 모듈식 아키텍처에 대해서도 간략히 논의해 봅니다. 이 빌드 툴 모음을 사용하려는 경우, 프로젝트에 맞는 언리얼 빌드 시스템 셋업 및 환경설정에 도움이 될만한 가이드를 준비하기도 했습니다. 마지막으로 고급 유저를 위한 정보도 조금 준비했는데, Include-What-You-Use (IWYU) 종속성 모델 및 BuildGraph 스크립트 시스템 관련입니다.

Mac OS X 에서 UnrealBuildTool 또는 UnrealAutomationTool 을 디버깅하려는 경우, MonoDevelop 4.2.2Mono 3.2.7 를 설치해 주세요.

UnrealBuildTool

UnrealBuildTool (UBT)는 다양한 빌드 구성으로 UE4 소스 코드를 빌드하는 프로세스를 관리해 주는 커스텀 툴입니다. BuildConfiguration.cs 파일에서 다양한 사용자 환경설정 가능 빌드 옵션을 살펴볼 수 있습니다.

UnrealHeaderTool

UnrealHeaderTool (UHT) 는 UObject 시스템을 지원하는 커스텀 파싱 및 코드 생성 툴입니다. 코드 컴파일은 두 단계로 이루어집니다:

  1. UHT 를 실행합니다. 언리얼 관련 클래스 메타데이터에 대한 C++ 헤더를 파싱하고, 다양한 UObject 관련 기능 구현을 위한 커스텀 코드를 생성하는 툴입니다.

  2. 보통 C++ 컴파일러를 실행하여 그 결과를 컴파일합니다.

컴파일시, 둘 중 어느 툴에서도 오류가 날 수 있으므로, 유심히 살펴 보시기 바랍니다.

모듈식 아키텍처

UE4 는 다수의 모듈로 나뉘어 있습니다. 각 모듈에는 .build.cs 파일이 있으며, 이를 통해 그 빌드 방식을 제어하고, 모듈 종속성, 부가 라이브러리, 인클루드 경로 등의 정의를 위한 옵션도 포함되어 있습니다. 기본적으로, 이 모듈은 DLL 에 컴파일되어 하나의 실행파일로 로드됩니다. BuildConfiguration.cs 파일에서 monolithic 실행파일 빌드를 선택할 수 있습니다.

언리얼 빌드 시스템 사용

언리얼 빌드 시스템을 사용하기에 앞서, 개발 환경에 대해 (Visual Studio 의 경우) .sln 이나 .vcproj 파일처럼 프로젝트 파일 개별적으로 빌드 프로세스가 실행된다는 것을 이해하는 것이 중요합니다. 이 파일을 갖고 있으면 편집 목적 상 유용하긴 하지만, 프로젝트 디렉터리 구조 내용에 따라 동적으로 생성하는 툴이 제공되어 있습니다. 이 툴은 [Root UE4] 디렉터리의 GenerateProject.bat 파일로 실행시킬 수 있습니다.

때때로 GenerateProject.bat 파일을 실행하면 디스크에서 추가( 또는 제거)되는 파일들로 코드 에디터 최신 상태를 유지할 수 있습니다.

셋업

환경설정

고급 토픽

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback