> For the complete documentation index, see [llms.txt](https://docs.edgegap.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.edgegap.com/docs.edgegap.com-ko/unreal-engine/more-build-methods.md).

# 추가 빌드 방법

이러한 접근 방식은 일반적으로 더 느리고 Unreal Engine에 대한 더 깊은 이해가 필요합니다.

{% hint style="success" %}
를 참조하세요 [Unreal Engine](/docs.edgegap.com-ko/unreal-engine.md) Edgegap에서 Unreal Engine 게임 서버 호스팅을 처음 시작할 때.
{% endhint %}

더 고급 Unreal Engine 및 Edgegap 사용자를 위한 대체 빌드 방법을 살펴보세요:

1. [#build-with-scripts](#build-with-scripts "mention") 는 지속적 통합에 적합한 빠르고 자동화된 방법입니다.
2. [#build-from-plugin](#build-from-plugin "mention") 는 Unreal Engine을 소스에서 빌드해야 하는 기존 빌드 방법입니다.

## ⚡ 스크립트로 빌드

스크립트를 사용한 빌드는 지속적 통합에 적합한 빠르고 완전 자동화된 쉬운 방법입니다.

### 준비 <a href="#scripts-before-starting" id="scripts-before-starting"></a>

### 1. 프로젝트 구성 <a href="#scripts-configure-game-builds" id="scripts-configure-game-builds"></a>

### 2. 빌드 및 게시 <a href="#scripts-build-and-upload-to-edgegap" id="scripts-build-and-upload-to-edgegap"></a>

☑️ **Docker가 설치되어 실행 중인지 확인하세요.**

{% embed url="<https://github.com/edgegap/edgegap-unreal-buildutils>" %}

☑️ **저희 Edgegap Build Utils를 다운로드하세요** 다음을 포함하여:

* 플랫폼별 빌드 스크립트:
  * `BuildAndUpload.ps1`  Windows용,
  * `BuildAndUpload.sh`  macOS 및 Linux용,
* `Dockerfile`  - Docker 이미지 빌드를 위한 레시피,
* `dockerignore`  - 빌드를 제거하고 속도를 높이기 위한 비핵심 파일 목록,
* `StartServer.sh`  - 런타임에서 Unreal Engine 수명 주기를 관리하는 유틸리티 스크립트.

☑️ **다음을 이동하세요 `edgegap-unreal-buildutils` 폴더를 프로젝트 루트 디렉터리로.**

☑️ **다음을 편집하세요 `BuildAndUpload`  스크립트를 플랫폼에 맞게** 다음을 구성하기 위해:

* Linux 서버용 사전 빌드된 Unreal Engine 이미지를 가져오는 데 사용되는 GitHub 자격 증명,
* 프로젝트 세부 정보 - 엔진 버전, 서버 구성, .uproject 파일 이름,
* [Edgegap 레지스트리](https://app.edgegap.com/registry-management/repositories/list) 완료된 빌드를 업로드하는 데 사용되는 자격 증명.

☑️ **편집한 스크립트를 실행하세요** 빌드 및 업로드 프로세스를 시작합니다. 이 단계를 완료하면 새 **이미지가 다음에 추가됩니다** [저장소의 Edgegap Container Registry 대시보드 페이지](https://app.edgegap.com/registry-management/repositories/list).

☑️ 자동으로 다음으로 리디렉션됩니다 **새 항목을 생성하세요** [앱 및 버전](/docs.edgegap.com-ko/learn/orchestration/application-and-versions.md#app-versions) 에서 [대시보드](https://app.edgegap.com/application-management/applications/list)**.**

✅ 이제 다음 단계로 진행할 수 있습니다. 다음으로 건너뛰세요 [#test-your-server-locally](#test-your-server-locally "mention").

## ⚡ 플러그인으로 빌드 <a href="#build-from-plugin" id="build-from-plugin"></a>

저희 기존 플러그인에는 고급 유틸리티가 포함되어 있으며, Unreal Engine을 소스에서 빌드해야 합니다.

### 준비 <a href="#plugin-before-starting" id="plugin-before-starting"></a>

<details>

<summary>개발 환경 구성</summary>

* [Unreal Engine 소스 코드 다운로드](https://dev.epicgames.com/documentation/en-us/unreal-engine/downloading-unreal-engine-source-code#downloadingthesourcecode).
* [Visual Studio 설정](https://dev.epicgames.com/documentation/en-us/unreal-engine/setting-up-visual-studio-development-environment-for-cplusplus-projects-in-unreal-engine).

</details>

<details>

<summary>공식 Edgegap Unreal Engine 플러그인 설치</summary>

다음 공식 플러그인 중 하나를 선택하세요:

* 다운로드 [개발자 도구](/docs.edgegap.com-ko/unreal-engine/developer-tools.md#integration-kit),
* 또는 다운로드 [개발자 도구](/docs.edgegap.com-ko/unreal-engine/developer-tools.md#legacy-plugin).

</details>

### 1. 프로젝트 구성 <a href="#scripts-configure-game-builds" id="scripts-configure-game-builds"></a>

☑️ [Unreal Engine 버전을 소스에서 빌드하세요](https://dev.epicgames.com/documentation/en-us/unreal-engine/building-unreal-engine-from-source) 개발 머신에서,

* 설치하세요 [특정 릴리스 브랜치(예: ](https://github.com/EpicGames/UnrealEngine/tree/5.5)[`5.5`](https://github.com/EpicGames/UnrealEngine/tree/5.5)[)](https://github.com/EpicGames/UnrealEngine/tree/5.5) 안정적인 기반 위에서 빌드하려면,
* **솔리드 스테이트 드라이브(SSD)를 사용하세요** 빌드 속도를 높이기 위해(\~12시간 이상에서 \~2시간 이상으로),
* 이는 처음 한 번만 필요하며, Unreal Engine 버전을 업그레이드할 때마다 필요합니다.

{% hint style="warning" %}
**git 클라이언트로 브랜치를 다운로드하세요!** GitHub UI를 사용하면 항상 불안정한 `릴리스` 브랜치가 다운로드됩니다.
{% endhint %}

☑️ [Unreal 크로스 컴파일 도구 체인 설치](https://dev.epicgames.com/documentation/en-us/unreal-engine/linux-development-requirements-for-unreal-engine) Linux용 게임 서버를 빌드하기 위해.

☑️ **개발 머신을 다시 시작하세요**, 그렇지 않으면 나중에 오류가 발생합니다!

### 2. 빌드 및 게시 <a href="#plugin-build-and-upload-to-edgegap" id="plugin-build-and-upload-to-edgegap"></a>

☑️ **Docker가 설치되어 실행 중인지 확인하세요.**

☑️ [저희 플러그인을 다시 빌드하세요](https://dev.epicgames.com/community/learning/tutorials/qz93/unreal-engine-building-plugins) 소스에서 빌드한 사용자 지정 Unreal Engine 버전에 맞게.

☑️ **컴파일된 플러그인을 복사하세요** 다음으로 `Plugins` 폴더 **Unreal 프로젝트의 루트에 있는** (엔진이 아닙니다).

☑️ **새 Unreal Engine을 실행하세요** Visual Studio에서 실행하고 **툴바 항목 Edit / Plugins를 여세요**.

☑️ **플러그인을 활성화하세요** 섹션에서 **INSTALLED / Other**.

☑️ **플러그인을 구성하세요** 툴바 항목을 열어 **Edit / Project Settings / Edgegap**:

{% hint style="warning" %}
입력 값을 편집한 후에는 항상 Enter 키를 눌러 **올바르게 저장되도록 하세요**.
{% endhint %}

* **API 토큰** 은 Edgegap에 서버를 업로드하는 데 필요하며, Get Token을 클릭하여 받을 수 있습니다.
* **애플리케이션 이름** Edgegap의 항목 이름은 프로젝트 이름과 같게 하거나 사용자 지정할 수 있으며, 소문자, 숫자 또는 대시 문자만 사용해야 합니다 `-` 그리고 밑줄 `_`.
* **이미지 경로** 는 Edgegap에서 게임 서버용 사용자 지정 아이콘을 선택적으로 제공합니다. 지금은 건너뛰세요.
* **버전 이름** 은 클라이언트/서버 호환성을 추적하고 문제가 있을 때 롤백하는 데 유용합니다.
  * 타임스탬프는 앱 버전 이름으로 훌륭한 선택입니다. 예: `2024.01.30-16.50.20-UTC` .
  * 여러 애플리케이션 버전이 동일한 이미지 태그를 가리킬 수 있습니다. 예: `v1.1.0` 및 `dev` .
  * 자세히 알아보기 [앱 및 버전](/docs.edgegap.com-ko/learn/orchestration/application-and-versions.md) 는 나중에.

{% hint style="warning" %}
**다음을 재사용하지 마세요 `최신` 버전** 시스템이 오래된(캐시된) 이미지를 배포하지 않도록 하기 위해.
{% endhint %}

☑️ 클릭하세요 **애플리케이션 생성.** 이 단계를 완료하면 다음이 생성됩니다 **새 애플리케이션이 표시됩니다** 에서 [Edgegap 대시보드](https://app.edgegap.com/application-management/applications/list).

☑️ 지금은 사용자 지정 컨테이너 레지스트리 설정을 건너뛰세요. 나중에 원하시면 타사 레지스트리를 사용할 수 있습니다.

☑️ 구성이 마음에 들면 **빌드 및 푸시**, 프로세스가 끝날 때까지 기다린 후 Unreal 콘솔에 새로운 오류가 없는지 확인하세요. 이 단계를 완료하면 다음이 생성됩니다 **프로젝트 루트에 새 폴더가 생성됩니다** - `Saved/LinuxServer`. 또한 **새 이미지가 이제 다음에 표시됩니다** [저장소 아래의 Edgegap Container Registry 대시보드 페이지](https://app.edgegap.com/registry-management/repositories/list), 그리고 새 [앱 및 버전](/docs.edgegap.com-ko/learn/orchestration/application-and-versions.md#app-versions) **다음에 표시됩니다** [애플리케이션 아래의 대시보드](https://app.edgegap.com/application-management/applications/list)**.**

☑️ 새 애플리케이션 버전에서 환경 변수 `TARGET_FILE_NAME`  을 다음과 일치하도록 설정하세요 `DefaultServerTarget`  이전 단계의 값 [#id-2.-configure-game-server-builds-1](#id-2.-configure-game-server-builds-1 "mention").

✅ 이제 다음 단계로 진행할 수 있습니다.

## 👉 다음 단계

다음으로 계속 [/pages/668d9a45536aae414ecc0912e502137bf709764c#id-5.-deploy-to-cloud](https://docs.edgegap.com/docs.edgegap.com-ko/unreal-engine/pages/668d9a45536aae414ecc0912e502137bf709764c#id-5.-deploy-to-cloud "mention") 저희의 [대시보드 배포](https://app.edgegap.com/deployment-management/deployments/list) 기능을 사용하고 배포 중지, 주입된 변수와 매개변수화, 서버 검색 가능성에 대해 더 알아보세요.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.edgegap.com/docs.edgegap.com-ko/unreal-engine/more-build-methods.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
