> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# PlayFab Unreal GSDK 플러그인 개요

> PlayFab Unreal GSDK 플러그인을 다루는 모든 페이지에 대한 개요

# PlayFab GSDK Unreal 플러그인 사용 방법

이 문서에서는 PlayFab Multiplayer Server SDK(GSDK) Unreal Online Subsystem(OSS) 플러그인을 Unreal 프로젝트와 통합하는 방법을 설명합니다.

이 플러그인은 Blueprint API와 C++ API를 모두 제공합니다. Blueprint API도 Unreal 프로젝트가 C++ 프로젝트여야 하며, Blueprint 전용 프로젝트에서는 작동하지 않습니다. 현재 Blueprint 전용 프로젝트인 경우, 플러그인을 추가하기 전에 먼저 C++ 프로젝트로 변환해야 합니다.

이 플러그인은 원래 Unreal Engine 4.26, 4.27, 5.0, 5.1과 함께 테스트되었습니다. 이 플러그인은 최신 3\~4개의 Unreal 버전에서 작동하도록 적극적으로 유지 관리됩니다. 이러한 버전에서 문제가 발생하면 다음에서 이슈를 열어 주세요: [Unreal Engine GSDK Repo](https://github.com/PlayFab/gsdk/issues).

이 가이드를 사용하려면 프로젝트 이름이 다른 경우 \_\_ThirdPersonMP\_\_의 모든 인스턴스를 프로젝트 이름으로 바꾸세요.

## 요구 사항

* Visual Studio를 다운로드합니다. [Community 버전](https://visualstudio.microsoft.com/vs/community/)은 무료입니다.
  * 필요한 워크로드: .NET 데스크톱 개발 및 C++를 사용한 데스크톱 개발
* Unreal Engine 소스 코드를 다운로드합니다. 지침은 [Downloading Unreal Engine Source code (external)](https://docs.unrealengine.com/ProgrammingAndScripting/ProgrammingWithCPP/DownloadingSourceCode/)를 참조하세요.
* 아직 하지 않았다면 이 저장소를 로컬 컴퓨터에 git clone 합니다.
  * `git clone https://github.com/PlayFab/gsdk.git`
  * 이후 단계에서는 이 저장소의 파일을 프로젝트에 통합하게 됩니다.
* \[선택 사항] [LocalMultiplayerAgent](https://github.com/PlayFab/MpsAgent/releases)를 다운로드합니다.
  * \[선택 사항] 또는 [LocalMultiplayerAgent 소스](https://github.com/PlayFab/MpsAgent/tree/main/LocalMultiplayerAgent)를 다운로드합니다.
* \[선택 사항] [PlayFab Marketplace 플러그인](https://www.unrealengine.com/marketplace/product/playfab-sdk) 또는 [GitHub의 소스 버전](https://github.com/PlayFab/UnrealMarketplacePlugin/tree/master/PlayFabPlugin/PlayFab). 이 플러그인은 GSDK에는 필요하지 않지만 로그인을 포함한 많은 PlayFab 서비스에는 필요합니다.

## 프로젝트 만들기

Unreal 서버 프로젝트는 네트워크 지원 멀티플레이어 Unreal 프로젝트여야 하며 전용 서버 모드를 갖추고 있어야 합니다. 이러한 전제 조건을 충족하는 프로젝트가 없다면 [Unreal 전제 조건 설정 가이드](/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/third-person-mp-example-project-setup)를 따라 설정하세요. 전용 서버가 있는 네트워크 지원 멀티플레이어 프로젝트가 준비되면 이 단계로 돌아와 계속 진행합니다.

준비가 되면 네트워크 지원 멀티플레이어 Unreal 서버 프로젝트를 열고 다음 단계로 진행하여 Unreal GSDK를 설치합니다.

## 프로젝트 GSDK 설정

* GSDK 프로젝트 전제 조건 세부 정보
  * 전용 서버:
    * 프로젝트에는 별도의 \{ProjectName}Server.Target.cs 파일이 있어야 합니다.
    * 이 파일에는 전용 서버 모드를 활성화하기 위해 `Type = TargetType.Server;`가 포함되어야 합니다.
    * Win64용 "development server" 구성으로 빌드하면 출력에 \{ProjectName}Server.exe가 포함됩니다.
  * 네트워크 지원:
    * 이 요구 사항을 충족하는 방법은 여러 가지가 있지만, 간단한 답은 다음과 같습니다. 클라이언트가 별도의 컴퓨터에 있는 게임 서버와 네트워크 연결을 설정하고 의미 있게 통신할 수 있어야 합니다.
    * 이 지침은 Unreal에 내장된 데이터 복제 시스템을 통해 안내하며, 이 시스템은 이 요구 사항의 대부분을 처리합니다.
    * ISocketSubsystem과 같은 소켓을 통해 이 연결을 보다 직접적으로 설정할 수 있지만, 이는 훨씬 고급 주제입니다.
  * 멀티플레이어:
    * 게임 서버는 여러 들어오는 클라이언트 연결을 수락하고 양쪽 모두와 제대로 통신할 수 있어야 합니다.
    * 다시 말하지만, Unreal의 내장 데이터 복제를 사용하면 이 요구 사항의 대부분이 처리됩니다.

멀티플레이어 프로젝트가 올바르게 구성되었다면 [GSDK 설치](/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/third-person-mp-example-gsdk-project-setup) 준비가 완료됩니다. 이 플러그인을 사용하면 서버가 PlayFab Multiplayer Services에서 실행될 수 있습니다.

## Unreal 프로젝트 빌드 구성

프로젝트에 GSDK가 설치되고 구성되면 [Unreal 프로젝트를 빌드](/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/building-the-third-person-mp-example-project)할 수 있습니다. 이후 단계에서 전체 테스트를 실행하려면 여러 빌드 구성이 필요합니다.

## 로컬 서버 배포 테스트

클라이언트 빌드와 "Development Server" 빌드가 있으면 [MPS 배포 프로세스를 로컬로 테스트](/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/third-person-mp-example-project-local-deployment-and-debugging)하고 서버가 작동하는지 확인할 수 있습니다.

## PlayFab에 배포

이제 PlayFab Multiplayer Services를 사용하여 클라우드에 게임 서버를 만들 준비가 되었습니다. PlayFab MPS는 [Windows 서버](/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/third-person-mp-example-project-cloud-deployment)와 [Linux 서버](/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/setting-up-a-linux-dedicated-server-on-playfab)를 지원합니다.

## 배포된 서버에 연결

마지막으로 [배포된 서버에 연결](/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/connect-to-mps-hosted-build)할 준비가 되었습니다.

## 감사의 말

이 플러그인을 만들어 제출해 주신 [Stefan Krismann](https://github.com/stkrwork)님께 감사드립니다.

훌륭한 [Dockerfile](https://github.com/narthur157/playfab-gsdk-ue4)을 제공해 주신 [Nick Arthur](https://github.com/narthur157)님께 감사드립니다.

코드, 샘플, 예제, 자습서 등 Unreal 및 Docker와 관련된 모든 작업을 해주신 [Adam Rehn](https://github.com/adamrehn)님께 감사드립니다.


## Related topics

- [PlayFab Unreal GSDK 플러그인 개요](/ko/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/index.md)
- [PlayFab for Unreal Engine 개요](/ko/services/playfab/sdks/unified-unreal/overview.md)
- [PlayFab Multiplayer Unity 플러그인 개요](/ko/services/playfab/multiplayer/lobby/lobby-matchmaking-sdks/multiplayer-unity-overview.md)
- [Unreal Engine 빠른 시작](/ko/services/playfab/sdks/unreal/quickstart.md)
- [Integrate the PlayFab Unreal Engine Marketplace plugin](/ko/services/playfab/multiplayer/networking/party-unreal-engine-oss-playfab-plugin-integration.md)
