본문 바로가기

Software Engineering/Tech-Stacks

[Unity6] Multiplayer Center

개요

2024년 4월 29일, Unity6 프리뷰가 출시되며 게임 개발자들에게 많은 기대를 모았다. 그중에서도 가장 눈에 띄는 변화는 멀티플레이어 게임 제작의 간소화였다.

지난 6월, 나는 5명의 팀원과 함께 Photon3을 사용해 약 일주일간 간단한 멀티플레이어 게임을 개발한 적이 있다. 개발 과정에서의 가장 큰 어려움은 멀티플레이 테스트였다. 버그를 찾아내기 위해서는 두 명 이상의 인원이 필요했으나, 팀원들이 각자의 작업에 집중해야 했기 때문에 그때그때 테스트를 진행하기 어려웠다.

당시 개발했던, 2~5인이 함께할 수 있는 멀티플레이 게임.

그러던 중, 9월 24일 코엑스에서 열린 Zempie Meetup 행사에서 Unity6의 멀티플레이어 기능 시연을 보게 되었다. 시연에서 특히 인상적이었던 점은 멀티플레이어 플레이 모드다. 이는 멀티플레이 게임 개발 과정에서 겪었던 불편함을 해소할 수 있는 중요한 기능이었다. 이외에도 멀티플레이 게임 제작에 편의성을 더해주는 다양한 신기능들이 생겼기에 이에 대해 가볍게 리뷰해보고자 한다.

멀티플레이 센터

멀티플레이어 센터는 내가 개발하고자 하는 멀티플레이이어 게임에 맞는 패키지를 추천해주고, 샘플과 튜토리얼을 제공하는 기능이다. 

Unity에디터를 킨 후 Window > Multiplayer > Multiplayer Center 을 통해 접근 가능하다.

사용 방법은 다음과 같다:

  1. 게임의 장르를 선택한다. 
  2. 게임 플레이의 진행속도에 따라 느림/빠름 여부를 선택한다. 
    느린 예: 턴제 게임, 퍼즐 게임 등.
    빠른 예: FPS, 액션 게임 등.
  3. 연산에 들어간 cost의 민감도를 선택한다. 
    역시나, FPS에 가까울수록 연산을 높게, 아니라면 느리게 하는 것이 좋다. 
  4. 네트워크 구조를 선택한다. 
    서버/클라이언트 구조, 다중 서버 세션 구조 등 총 5가지 종류가 있다.
  5. 예상 플레이어의 수를 선택한다.

상단에 Recommandation과 Quickstart 탭이 있는데, 기존에 한번이라도 멀티플레이 패키지를 다운로드받은 적이 있어야 Quickstart가 활성화된다. 

Recommandation에서 위에 간략하게 설명한 모든 옵션 선택을 마치면, 오른쪽에 추천하는 패키지들이 나타난다. 나의 선택에 따라 추천 패키지나 Netcode Solution 등이 바뀌지만, 임의로 선택을 해제하거나 옵션을 바꿀 수도 있다. 또한 최하단에 Dedicated Server Package 역시 있었지만, 내가 선택한 옵션에서는 incompatible이라는 문구와 함께 아예 선택할 수 없게 되어 있었다. 아마 추가적인 패키지 설치를 해야만 사용할 수 있는 기능으로 보인다.

가장 우측 하단의 Install Packages 버튼을 누르니 Quickstart 페이지로 넘어가졌다. 또한 위의 사진과 같이 새로운 기능 탭 역시 추가되었다. Quickstart 탭에는 내가 다운로드 받은 패키지에 대한 가이드와 예제 등을 보여준다. 

정리

오늘은 Multiplayer Center의 사용법에 대해 간단히 알아보았다.  가장 마음에 들었던건 네트워크 구조 선택에 따라 오른쪽 페이지에 간단한 이미지로 각 네트워크의 특성을 보여준다는 점이었다. 

네트워크 모델: 순서대로 server/client, Deterministic Lockstep, Multi-Server Sessions, No netcode.

이번에 배운 내용을 바탕으로 차근차근 멀티플레이 게임 개발을 시도해 봐야겠다.