언리얼5

[UE5 Multiplayer Shooting-2] UE LAN을 활용한 멀티플레이

TIN9 2023. 7. 25.
반응형

LAN (Local Area Network)

LAN 게임 서버는 로컬 네트워크 상에서만 접근 가능한 게임 서버를 의미합니다.

같은 네트워크에 연결되어 있다면 멀티플레이어 게임을 즐길 수 있도록 해준다.

 

구현 방법은 아주 간단합니다

 

구현 내용

CharacterActor에 서버를 오픈할 OpenLobby() 함수 한 개와 서버에 입장하는 CallOpenLevel, CallClientTravel함수 두 개를 구현

 

1번 Client가 해당 함수를 이용해(Key Input 등록) listen서버를 열어줍니다.

void AMPTestingCharacter::OpenLobby()
{
	UWorld* World = GetWorld();

	if (World)
	{
		World->ServerTravel("/Game/ThirdPerson/Maps/Lobby?listen");
	}
}

2번 Client가 해당 함수들을 이용해(Key Input 등록) 서버에 입장

void AMPTestingCharacter::CallOpenLevel(const FString& Address)
{
	UGameplayStatics::OpenLevel(this, *Address);
}

void AMPTestingCharacter::CallClientTravel(const FString& Address)
{
	APlayerController* PlayerController = GetGameInstance()->GetFirstLocalPlayerController();

	if (PlayerController)
	{
		PlayerController->ClientTravel(Address, ETravelType::TRAVEL_Absolute);
	}
}

https://youtu.be/fM6FB_hAUCY

 

 


필자의 경우 PC 두 아이피가 달라 하나의 PC로 테스트 진행

반응형

댓글