언리얼 엔진(UE) 은 프로젝트 컴파일과 엔진 연결의 모든 복잡한 측면을 처리하는 UnrealBuildTool(UBT) 을 사용하는 커스텀 빌드 메서드를 사용합니다. 이 프로세스는 투명하게 수행되므로 표준 Visual Studio 빌드 워크플로를 통해 프로젝트를 간단하게 빌드할 수 있습니다.
UnrealBuildTool은 *.build.cs
및 *.target.cs
파일을 사용하여 게임 프로젝트를 빌드합니다. 이 파일들은 C++ 템플릿을 사용하여 프로젝트를 생성하거나 CPP 클래스 마법사를 사용하여 블루프린트 전용(Blueprints Only) 템플릿에서 생성한 프로젝트에 코드를 추가할 때 자동으로 생성됩니다.
빌드 환경설정
언리얼 프로젝트에는 에디터(Editor), 클라이언트(Client), 게임(Game), 서버(Server) 등 여러 타깃이 있으며 *.target.cs
파일에서 설명됩니다. 게다가 이들 각각은 서로 다른 환경설정으로 빌드될 수 있습니다. Visual Studio에서 이는 각 타깃에 대해 서로 다른 환경설정을 갖는 Visual Studio *.vcxproj
파일로 나타납니다. 솔루션 환경설정의 이름은 [환경설정][타깃 타입] 으로 지정됩니다(예: 디폴트 에디터 타깃의 경우 'DevelopmentEditor', 디폴트 독립형 게임 타깃의 경우 'Development'). 사용하는 환경설정은 생성하려는 빌드의 목적에 따라 결정됩니다.
모든 빌드 구성에는 두 개의 키워드가 포함되어 있습니다. 첫 번째 키워드는 엔진과 게임 프로젝트의 상태를 나타냅니다. 예를 들어 디버그*(Debug) 환경설정을 사용하여 컴파일하는 경우 빌드 프로세스에서 최적화가 생략되어 디버깅이 더 쉬워집니다. 모든 환경설정은(심지어 배포(Shipping) 빌드도) Visual Studio에서 빌드된 경우 또는 언리얼 에디터에서 프로젝트 세팅(Project Settings) > 프로젝트(Project) > 패키징(Packaging) > 프로젝트(Project) > 디버그 파일 포함(Include Debug Files) 이 켜져 있는 경우 디버깅용 기호를 생성합니다. 즉, 개발(Development) 및 배포(Shipping) 환경설정을 계속 디버그할 수 있지만, 디버그 환경설정만큼 디버그가 쉽지 않을 수 있습니다. 두 번째 키워드는 빌드하려는 타깃을 나타냅니다. 예를 들어 언리얼에서 프로젝트를 열려면 에디터(Editor) 타깃 키워드를 사용하여 빌드해야 합니다.
빌드 환경설정 - 상태 | 설명 |
---|---|
디버그(Debug) | 이 환경설정은 최적화 없이 디버그 환경설정에서 엔진과 게임 코드를 모두 빌드합니다. 이렇게 하면 속도가 느려지지만 디버깅은 더 쉽습니다. 디버그 환경설정을 사용하여 프로젝트를 컴파일하고 언리얼 에디터로 프로젝트를 열고 싶다면, 프로젝트에 반영된 코드 변경 사항을 보기 위해 -debug 플래그를 사용해야 합니다. |
DebugGame | 이 환경설정은 최적화 없이 게임 코드를 빌드합니다. 이 환경설정은 게임 모듈만 디버깅하는 경우 이상적입니다. |
개발(Development) | 이 환경설정을 사용하면 가장 시간이 많이 걸리는 엔진 및 게임 코드 최적화를 제외한 모든 작업이 가능하므로 개발 및 퍼포먼스상의 이유로 이상적입니다. 언리얼 에디터는 기본적으로 개발 환경설정을 사용합니다. 개발 환경설정을 사용하여 프로젝트를 컴파일하면 에디터에 반영된 프로젝트의 코드 변경 사항을 볼 수 있습니다. |
배포(Shipping) | 퍼포먼스 최적화 및 게임 배포를 위해 사용하는 환경설정입니다. 콘솔 명령, 통계, 프로파일링 툴을 완전히 제거합니다. |
테스트(Test) | 이 환경설정은 배포 환경설정과 동일하지만 일부 콘솔 명령, 통계, 프로파일링 툴이 활성화됩니다 |
빌드 환경설정 - 타깃 | 설명 |
---|---|
게임(Game) | 이 환경설정은 프로젝트의 독립형 실행 버전을 빌드하지만 플랫폼에 특정한 쿠킹된 콘텐츠가 필요합니다. 쿠킹된 콘텐츠에 대한 자세한 정보는 프로젝트 패키징 레퍼런스 페이지를 참조하세요. |
에디터(Editor) | 언리얼 에디터에서 프로젝트를 열고 반영된 모든 코드 변경 사항을 보려면 프로젝트를 에디터 환경설정으로 빌드해야 합니다. |
클라이언트(Client) | UE 네트워킹 기능을 사용하여 멀티플레이어 프로젝트를 작업하는 경우, 이 타깃은 지정된 프로젝트를 멀티플레이어 게임용 UE 클라이언트-서버 모델의 클라이언트로 지정합니다. <GAME_NAME>Client.Target.cs 파일이 있는 경우 클라이언트 빌드 환경설정이 유효합니다. |
서버(Server) | UE 네트워킹 기능을 사용하여 멀티플레이어 프로젝트를 작업하는 경우, 이 타깃은 지정된 프로젝트를 멀티플레이어 게임용 UE 클라이언트-서버 모델의 서버로 지정합니다. <GAME_NAME>Server.Target.cs 파일이 있는 경우 서버 빌드 환경설정이 유효합니다. |
Visual Studio로 빌드하기
빌드 환경설정 설정하기
빌드 환경설정은 Visual Studio 툴바에서 설정할 수 있습니다. 이 설정은 다음과 같이 찾을 수 있습니다.

솔루션 플랫폼 설정하기
솔루션 플랫폼은 Visual Studio 툴바에서 설정할 수 있습니다.
언리얼 엔진으로 작업할 때는 일반적으로 Win64 플랫폼을 사용하게 됩니다. 이는 프로젝트 파일을 생성할 때 기본적으로 포함되는 유일한 항목입니다. IDE의 프로젝트 파일 페이지에는 추가 플랫폼의 프로젝트 파일 생성에 대한 지침이 있습니다.

프로젝트 빌드하기
계속하기 전에 Windows 데스크톱용 Visual Studio 2019 이상이 설치되어 있는지 확인하세요. Mac을 사용하는 경우 Xcode 9.0 이상이 설치되어 있는지 확인하세요.
-
솔루션 환경설정(Solution Configuration) 을 빌드하려는 환경설정으로 설정합니다. 이 예시에서는 개발 에디터(Development Editor) 로 설정합니다. 이용 가능한 각 환경설정에 대한 설명은 빌드 환경설정 섹션을 참조하세요.
-
게임 프로젝트를 우클릭하고 리컴파일을 위해 리빌드(Rebuild) 를 선택합니다.
이제 컴파일된 프로젝트로 언리얼 엔진을 실행할 수 있습니다.
UE를 실행할 때 프로젝트를 리빌드한 빌드 환경설정과 일치하는 언리얼 엔진 실행 파일을 사용하는 것이 중요합니다. 예를 들어 DebugGame Uncooked
빌드 환경설정에서 프로젝트를 컴파일한 경우 게임 정보를 실행인자로 사용하여 UnrealEditor-Win64-DebugGame.exe
실행 파일을 실행합니다. 바이너리 명명 규칙에 대한 자세한 정보는 언리얼 엔진 빌드 페이지를 참조하세요.
언리얼 엔진을 실행할 때 Uncooked 환경설정으로 프로젝트를 리빌드한 경우 -game
플래그를 추가하고 Debug 환경설정으로 프로젝트를 리빌드한 경우 -debug
플래그를 추가하는 것이 중요합니다.
Visual Studio의 알려진 문제
문제 | 해결책 |
---|---|
'프로젝트가 오래되었습니다(Project is out of date)' 메시지가 항상 나타남 | 프로젝트가 실제로 최신 상태인데도 Visual Studio에서 최신 상태가 아니라고 생각합니다. 이 대화 상자를 다시 표시하지 않음(Do not show this dialog again) 박스에 체크하고 아니요(No) 를 누르면 이 메시지가 표시되지 않게 할 수 있습니다. |
Debug 환경설정을 사용할 때 디버깅 정보 없음(No Debugging Information) 창이 표시됨 | UnrealEditor.exe 가 Development 환경설정을 사용하여 컴파일되었기 때문입니다. 이 경고가 표시되어도 Debug 환경설정을 사용하여 컴파일하면 게임 프로젝트를 계속 디버그할 수 있습니다. 이 대화 상자를 다시 표시하지 않음(Do not show this dialog again) 박스에 체크하고 예(Yes) 를 누르면 이 메시지가 표시되지 않게 할 수 있습니다. |
Xcode로 빌드하기
Xcode에서 빌드할 때는 에디터가 아닌 게임 프로젝트만 컴파일합니다.
프로젝트 빌드하기
언리얼 엔진 Xcode 프로젝트는 Xcode의 제품(Product) > 빌드(Build) 옵션을 사용할 때 Debug 환경설정을 빌드하고 제품 > 빌드 목적(Build For) > 프로파일링(Profiling) 옵션을 사용할 때 Development 환경설정을 빌드하도록 구성됩니다. 타깃 스키마를 편집하여 이 동작을 편집할 수 있습니다.
이제 컴파일된 프로젝트로 언리얼 엔진을 실행할 수 있습니다.
바이너리 에디터를 실행할 때 Uncooked 환경설정으로 프로젝트를 리빌드한 경우 -game
플래그를 추가하고 Debug 환경설정으로 프로젝트를 리빌드한 경우 -debug
플래그를 추가하는 것이 중요합니다.
Xcode 알려진 문제
문제 | 해결책 |
---|---|
Xcode가 중단점에서 멈추지 않음 | 언리얼 엔진 프로젝트의 중단점을 올바르게 처리하려면 Xcode의 LLDB 디버거를 환경설정해야 합니다. 홈 폴더에
|