이 글은 언리얼 엔진에서 데디케이트 서버에 대해 정리한 내용을 다루고 있습니다.
언리얼 엔진에서 데디케이트 서버(Dedicated Server) 는 게임의 멀티플레이 환경을 지원하기 위해 별도로 실행되는 서버 애플리케이션입니다. 이는 클라이언트가 아닌 서버 역할만 수행하며, 게임의 로직을 처리하고 클라이언트 간의 동기화를 담당합니다.
언리얼 엔진에서 데디케이트 서버(Dedicated Server) 는 게임의 멀티플레이 환경을 지원하기 위해 별도로 실행되는 서버 애플리케이션입니다. 이는 클라이언트가 아닌 서버 역할만 수행하며, 게임의 로직을 처리하고 클라이언트 간의 동기화를 담당합니다.
Project Settings → Packaging에서 Include Server Target 활성화Maps & Modes → Server Default Map 설정Source/프로젝트명/ 경로에 프로젝트명Server.Target.cs 추가:
using UnrealBuildTool;
using System.Collections.Generic;
public class MyGameServerTarget : TargetRules
{
public MyGameServerTarget(TargetInfo Target) : base(Target)
{
Type = TargetType.Server;
DefaultBuildSettings = BuildSettingsVersion.V2;
ExtraModuleNames.Add("MyGame");
}
}
명령어를 사용하여 데디케이트 서버 빌드:
UnrealBuildTool.exe MyGameServer Win64 Development -Project="경로/MyGame.uproject" -WaitMutex -NoHotReloadFromIDE
MyGameServer.exe -log
클라이언트에서 명령어를 입력하여 서버에 접속할 수 있음:
open <서버 IP>:<포트>
또는 블루프린트/코드에서 UGameplayStatics::OpenLevel 사용:
UGameplayStatics::OpenLevel(GetWorld(), TEXT("192.168.1.100:7777"));