언리얼 엔진 소스 코드 내려받기

소스 코드 저장소에 접속하여 언리얼 엔진 최신 빌드를 다운로드하는 법에 대한 단계별 안내입니다.

Windows
MacOS
Linux
Prerequisite Topics

This page assumes you have prior knowledge of the following topics. Please read them before proceeding.

언리얼 엔진 회원이 Unreal Engine GitHub 저장소에서 Unreal Engine 4 (UE4) 소스 코드를 다운로드하고, 코드 작업을 시작하는 방법을 자세히 설명합니다.

https://github.com/EpicGames/UnrealEngine 저장소에 액세스하려면:

  • 언리얼 엔진 회원이 되어야 합니다.

  • GitHub 계정이 있어야 합니다.

  • GitHub 계정과 언리얼 엔진 계정을 연결해야 합니다. GitHub 의 UE4 문서를 참고하세요.

언리얼 엔진 4 작업을 위해 반드시 소스 코드를 다운로드할 필요는 없습니다. 단순히 언리얼 엔진 바이너리 버전을 다운로드 및 설치하려면, 언리얼 엔진 설치 문서에서 언리얼을 시작 하는 방법을 참고할 수 있습니다. 그러나 소스 코드를 액세스할 수 있으면 사용자와 프로젝트에 매우 유용할 수 있습니다. 예:

  • 에픽 기술자가 매일, 사실상 분 단위로 제공하는 모든 최신 기능과 버그 픽스에 액세스할 수 있습니다.

  • 아직 해결되지 않았지만 프로젝트에 치명적인 버그를 발견한 경우, 프로젝트 차단을 해제하고 자신의 소스 코드 버전에서 픽스를 만들어 직접 바이너리를 리빌드할 수 있습니다.

  • 픽스와 기능을 에픽에 다시 제출하면 엔진을 개선하고 전체 언리얼 커뮤니티를 도울 수 있습니다.

언리얼 엔진 라이선시의 경우, 공개 GitHub 저장소 대신 Perforce 서버에서 소스 코드에 액세스할 수 있습니다. Perforce 사용법 관련 하위 주제가 보이지 않는 경우, 사이트에 에픽게임즈 계정으로 로그인한 뒤 다시 확인해 주세요.

라이선시께서는 에픽의 퍼포스 (P4V) 프록시 서버에 연결하여 언리얼 엔진 4 를 내려받을 수 있습니다. 퍼포스 서버 로그인 정보는 에픽 게임스가 귀하의 기술팀장께 보내드린 UDN 환영 이메일에 제공되어 있습니다. 각 팀마다 한 세트의 로그인 인증정보만 제공됩니다.

소스 코드 브랜치

UE4 의 소스 코드가 세 가지 브랜치로 나뉘어 퍼블리싱된 것을 볼 수 있습니다.

Branches.png

릴리즈 브랜치

릴리즈 브랜치 는 QA 팀의 철저한 테스트를 거쳐 UE4 학습이나 언리얼 게임 제작을 시작하기 좋은 지점이 됩니다. 매달 또는 격월마다 빌드를 새로 릴리즈하려는 목표로 이 브랜치 안정화에 총력을 기울이고 있습니다.

승격 브랜치

승격 브랜치 는 디자이너와 아티스트가 사용하도록 업데이트되는 빌드입니다. 이 브랜치는 거의 매일 업데이트되므로, UE4 의 최신 안정 기능을 접해볼 수 있습니다. 이 브랜치는 UE4 의 기능 개발이 어떻게 이루어지는지 배워보기에 좋습니다.

마스터 브랜치

마스터 브랜치에는 최첨단 기술이 포함되어 있으므로, UE4 가 소스에서 컴파일된다는 보장이 없습니다.

마스터 브랜치 는 엔진 개발 팀에 의해 (아래 그림의) 라이브 체인지 를 반영한 것입니다. 보통 숙련된 개발자 분들이 UE4 개발자들과 함께 작업하고자 할 때 이 브랜치에서 작업합니다.

때때로 새로운 버전 안정화나 핫 픽스 작업시 다른 브랜치가 나타날 수도 있습니다.

에픽의 퍼포스 서버는 이제 SSL 암호화를 통해 접속되며, 퍼포스 클라이언트 (P4V, p4, 또는 API) 2012.1 버전 이상이 필요합니다. 지연시간 기반 라우팅을 활용하여 글로벌 DNS 이름을 사용하는 경우 가장 가까운 퍼포스 지역 서버에 자동 접속되도록 할 수가 있으며, 각 지역의 프록시 서버에 직접 연결하여 항상 가장 가까운 곳에 접속되도록 할 수도 있습니다.

에픽의 퍼포스 서버에 접속

  1. Windows용 P4V 퍼포스 클라이언트를 설치합니다. 클라이언트 내려받기는 Perforce Downloads 페이지에서 가능합니다.

    Perforce Client

  2. Open Connection 대화창에 다음과 같이 접속 정보를 입력합니다:

    • Server: ssl:p4-licensee.epicgames.com:1666

      위 주소로 접속자의 물리적 위치에 따라 속도가 가장 빠른 지역 프록시 서버로 자동 접속될 것입니다. 어떤 이유로든 특정 지역 프록시에 연결할 필요가 있는 경우엔 아래 주소를 사용하면 됩니다: 미국 동부 (버지니아): ssl:p4-licensee-east.us.epicgames.com:1666 미국 서부 (오레건): ssl:p4-licensee-west.us.epicgames.com:1666 아시아 북동부 (도쿄): ssl:p4-licensee-northeast.ap.epicgames.com:1666 유럽 중부 (프랑크푸르트): ssl:p4-licensee-central.eu.epicgames.com:1666

    • User: 에픽 게임즈가 제공한 퍼포스 사용자명입니다.

    • Password: 에픽 게임즈가 제공한 암호입니다.

  3. OK 를 누르면 퍼포스 서버에 접속합니다.

  4. P4V 에서 Connection > New Workspace 로 엔진의 새 워크스페이스를 만듭니다. 아래 정보를 입력하고 OK 를 선택하면 워크스페이스가 생성됩니다:

    • Workspace 이름: UE4_TeamName (추천일 뿐입니다. 팀 이름으로만 끝난다면 어떤 이름이든 상관 없습니다.)

    • Stream: Browse 클릭 후 사용가능한 스트림 목록에서 //UE4/Release-Latest 를 선택합니다.

    new_workspace.png

  5. Depot 패널에서 Filter Depot 버튼을 클릭하고 Tree Restricted to Workspace View 를 선택합니다.

    filter_depot.png

에픽에서는 모든 브로커와 프록시 SSL end point (종단점)에 대해 일관된 certificate fingerprint (서티피케이트 핑거프린트)를 유지하나, 퍼포스에서는 하나의 IP 주소 + 핑거프린트 짝마다 하나의 trust (신뢰)를 필요로 합니다. 하나의 종단점에 처음 접속할 때, 반드시 그 종단점을 신뢰해 줘야 합니다. 에픽의 핑거프린트는 45:0D:78:E2:0E:9E:E4:82:45:80:16:36:29:5E:54:4D:66:31:6C:43 입니다.

P4V 에 새로운 종단점을 신뢰하겠냐는 창이 뜹니다:

fingerprint.png

명령줄로는 p4 trust 명령을 사용합니다.

$ p4 trust -y
The fingerprint of the server of your P4PORT setting
'ssl:p4-licensee-east.us.epicgames.com:1666' (52.23.106.194:1666) is not known.
That fingerprint is 45:0D:78:E2:0E:9E:E4:82:45:80:16:36:29:5E:54:4D:66:31:6C:43
Added trust for P4PORT 'ssl:p4-licensee-east.us.epicgames.com:1666' (52.23.106.194:1666)

로컬 프록시 서버 사용

로컬 프록시 서버를 운영중인 경우, 각 지역의 프록시 서버가 아닌 브로커를 통해 접속해야 합니다. 글로벌 브로커 접속 주소는 다음과 같습니다:

  • ssl:p4-licensee.epicgames.com:1666

위 주소를 통해 접속자의 물리적 위치에 따라 가장 빠른 지역 브로커에 자동 연결될 것입니다. 어떤 이유로든 특정 지역 브로커에 연결할 필요가 있는 경우 아래 주소를 사용하시면 됩니다:

  • 미국 동부 (버지니아): ssl:p4-licensee-east.us.epicgames.com:1666

  • 아시아 북동부 (토쿄): ssl:p4-licensee-northeast.ap.epicgames.com:1666

  • 유럽 중부 (프랑크푸르트): ssl:p4-licensee-central.eu.epicgames.com:1666

언리얼 엔진 4 내려받기

라이선시에게 언리얼 엔진 4 를 배포하는 방식은, 퍼포스 디포의 //UE4/Release-Latest 스트림을 통해 이루어집니다. 여기에는 전체 엔진은 물론 예제 게임, 샘플, 데모와 같은 형태의 부가 프로젝트도 여럿 포함되어 있습니다. 모든 것을 내려받아도 되고, 필요하거나 원하는 부분만 선택적으로 받아도 됩니다. 가급적 빠른 준비를 위해서는, 최소한의 부분만 내려받아 시작한 다음, 필요에 따라 다른 부분을 내려받는 것을 추천합니다. 내려받기 완료를 기다리느라 허비되는 시간을 크게 줄일 수 있습니다.

//UE4/Release-Latest 스트림에는 많은 수의 파일이 있으며, 총 크기가 수 기가바이트에 달하므로, 전체 브랜치를 동기화시키는 데는 시간이 꽤 걸릴 수 있습니다.

  1. UE4 스트림에 우클릭한 다음 Get Latest Revision 을 선택합니다.

    Perforce - Get Latest Revision

  2. 모든 파일 최신 버전을 다운로드합니다.

소스 코드 다운로드

다음 안내에 따라 언리얼 엔진 소스 코드를 다운로드해 주세요.

계속하기에 앞서 Windows용 Visual Studio 2017 이상 버전이 설치되어 있는지 확인해 주시기 바랍니다.

  1. GitHub for Windows 설치 후 repository 를 fork 및 clone 합니다.

    명령줄에서 Git 를 사용하는 방법은, Setting up GitFork a Repo 문서를 참고하세요.

    Git 를 사용하지 않으려면, 오른쪽의 'Download ZIP' 버튼으로 소스를 구할 수 있습니다. 내장 Windows zip 유틸리티는 인터넷에서 다운로드한 zip 파일의 내용은 실행하기에 안전하지 않은 것으로 마킹하므로, zip 파일을 우클릭하고 '속성...' 에서 '차단 해제(Unblock)' 한 뒤 압축을 해제해 주세요. 써드 파티 zip 유틸리티는 보통 이런 작업이 필요치 않습니다.

  2. Visual Studio 2017 를 설치합니다.

    소규모 팀과 인디 개발자들에겐 무료인 Visual Studio Community 2017 포함 모든 Visual Studio 2017 데스크톱 에디션에서 UE4 를 빌드할 수 있습니다. 설치 옵션 중 기본으로 꺼진 옵션인 C++ 지원이 포함되어 있는지 확인합니다.

  3. 탐색기에서 소스 폴더를 열고 Setup.bat 를 실행합니다.

    그러면 엔진의 바이너리 콘텐츠 다운로드 뿐 아니라, 사전 요구사항을 설치하고, 언리얼 파일 연결 구성 작업을 해줍니다. Windows 8 은 SmartScreen 에서 경고가 뜰 수 있습니다. "More info" - "Run anyway" 로 계속합니다.

    엔진 바이너리 순수 다운로드 크기는 현재 3-4 gb 로, 완료하는 데 시간이 조금 걸릴 수 있습니다. 그 이후의 체크아웃은 점증식 다운로드만 있으면 되므로, 훨빤 빠릅니다.

  4. GenerateProjectFiles.bat 를 실행하여 엔진 프로젝트 파일을 생성합니다. 1 분이 채 안돼서 완료될 것입니다.

  5. UE4.sln 파일을 더블클릭하여 Visual Studio 에 프로젝트를 로드합니다. 솔루션 구성을 Development Editor 로, 플랫폼은 Win64 로 설정한 뒤 UE4 타깃에 우클릭하고 Build 를 선택합니다. 시스템 사양에 따라 컴파일이 10-40 분 걸릴 수 있습니다.

  6. 컴파일이 끝나면, Visual Studio 에서 시작 프로젝트를 UE4 로 설정하여 에디터를 로드한 뒤 F5 키를 눌러 디버깅할 수 있습니다.

  1. Mac용 GitHub 를 설치한 뒤 repository 를 fork 및 clone 합니다.

    Terminal 에서 Git 를 사용하는 방법은, Setting up GitFork a Repo 페이지를 참고하세요. Git 를 사용하고 싶지 않으면, 오른쪽의 'Download ZIP' 버튼으로 소스를 바로 다운로드할 수 있습니다.

  2. Xcode 최신 버전을 설치합니다.

  3. Finder 에서 소스 폴더를 열고 Setup.command 를 더블클릭하여 엔진 바이너리 콘텐츠를 다운로드합니다. 그 후 Terminal 창을 닫아도 됩니다.

    소스를 .zip 파일로 다운로드했다면, 개발자를 알 수 없다는 경고가 뜰 것입니다 (GitHub 의 .zip 파일은 디지털 사인 되어있지 않기 때문입니다). 우회법은, Setup.command 에 우클릭하고, Open 을 선택한 뒤 Open 버튼을 클릭하면 됩니다.

  4. 같은 폴더에서 GenerateProjectFiles.command 를 더블클릭합니다. 1 분이 채 안되어 완료될 것입니다.

  5. UE4.xcworkspace 파일을 더블클릭하여 프로젝트를 Xcode 에 로드합니다. 제목줄에서 My Mac 타깃에 대한 ShaderCompileWorker 를 선택한 뒤, 'Product > Build' 메뉴 항목을 선택합니다. Xcode 빌드가 끝나면, My Mac 타깃의 UE4 에 대해서도 같은 작업을 해줍니다. 시스템 사양에 따라 컴파일 시간은 15 - 40 분 정도 걸립니다.

  6. 컴파일이 끝나면, 'Product > Run' 메뉴 항목으로 에디터를 로드합니다.

저희 개발 및 서포트 팀은 현재 Ubuntu 최신 버전을 사용하고 있습니다. 다른 (Ubuntu 버전을 포함해서) Linux 배포 버전은 지원하지 못할 수 있습니다.

  1. Git 셋업repository 를 fork 합니다. Git 를 사용하고 싶지 않은 경우, 오른쪽의 'Download ZIP" 버튼을 누르면 소스를 zip 파일로 받습니다.

  2. 소스 폴더를 열고 Setup.sh 를 실행시켜 엔진 바이너리 콘텐츠를 다운로드합니다.

  3. 크로스 컴파일 및 네이티브 빌드 모두 지원합니다.

크로스 컴파일 은 Windows에서 (Mac도 지원할 계획이 있습니다) 최소한의 번거로운 작업으로 Linux용 게임을 패키징하고자 하는 경우 편리하며, 크로스 컴파일러 툴체인 이 설치되어 있어야 합니다 (자세한 내용은 Linux 크로스 컴파일 페이지 를 참고하세요).

네이티브 컴파일별도의 README커뮤니티 wiki 페이지 에서 찾아볼 수 있습니다.

이 글은 GitHub 의 소스 코드 저장소에서 언리얼 엔진을 다운로드하여 빌드하는 법을 보여드립니다. 언리얼 엔진 바이너리 버전을 다운로드하려면, 언리얼 엔진 설치 문서를 통해 언리얼을 시작 하는 법을 배워보세요.

라이선싱 및 기여

GitHub 의 언리얼 엔진 접근 및 사용 권한은 언리얼 엔진 최종 사용자 라이선스 계약 에 따릅니다. 때때로 개정되는 내용을 포함해서 그 조항에 동의하지 않는 경우, 언리얼 엔진 접근 및 사용이 불가능합니다.

GitHub 의 pull requests 를 통한 언리얼 엔진 개발 기여는 언제든 환영합니다! 현재 대부분의 개발은 master 브랜치에서 일어나고 있기에 거기서 (특히나 신기능에 대한) pull request 를 받습니다. 모든 신규 코드는 에픽 코딩 표준 을 준수하도록 하고 있습니다. 모든 기여 부분은 EULA 조항을 따릅니다.

다음 단계

언리얼 엔진 다운로드 및 셋업을 마쳤으면, 소스에서 엔진을 빌드 할 차례입니다.

사족

새로 받은 소스 빌드에서 에디터를 처음 실행시키면, 로드 시간이 길 수 있습니다. 엔진에서 파생 데이터 캐시(DDC) 에 플랫폼에 맞는 콘텐츠 최적화를 하기 때문인데, 일회성 작업일 것입니다.

언리얼 엔진 코드 private fork 는 귀하의 GitHub 계정 권한에 연동되어 있습니다. GitHub 사용자명을 해제하거나 바꾸면, fork 를 다시 한 뒤 로컬 사본에서 변경사항을 업로드해 줘야 할 것입니다.

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