Strix 아키텍처 개요

Strix는 몇 가지 요소로 구성됩니다.

  1. Strix Server: 서버 측 애플리케이션.

  2. Strix Cloud: Strix 게임 서버를 서비스로 이용할 수 있는 클라우드 솔루션. Strix Cloud 웹 인터페이스를 통해 액세스 가능.

  3. Strix Net/Strix Client: 기본 Strix 기능을 구현하는 클라이언트 측 라이브러리.

  4. Strix SDK: 게임 엔진별로 최적화된 Strix 기능을 제공하는 플러그인

Strix Server와 Strix Cloud

Strix Cloud에서 새 애플리케이션을 만들고 나면 서버에 클러스터를 추가해도 됩니다. 클러스터란 중앙 마스터 서버에 연결된 방 서버를 말합니다.

마스터 서버

Strix에 있는 서버는 마스터 서버와 방 서버 두 가지입니다. 마스터 서버에는 연결된 방 서버 각각의 최신 정보와 서버에 있는 방의 정보가 들어 있습니다. 마스터는 클러스터가 진입하는 지점 역할을 합니다. 클라이언트는 마스터에서 검색 작업을 하여 특정 방이나 방 서버를 찾을 수 있습니다.

방 서버

방 서버는 플레이어가 입장할 수 있는 방을 실행합니다. 방 안에 있는 멤버들 간의 통신을 라우팅하고 방 멤버 전체에 관한 정보와 방 속성을 저장합니다. 방 서버에는 여러 가지 방을 많이 넣을 수 있습니다. 방 만들기와 삭제는 애플리케이션에서 처리하며, Strix Cloud 인터페이스를 통해 방 수 또는 초당 메시지 수를 제한하도록 방 서버를 설정할 수 있습니다.

방 서버는 맵이나 게임 인스턴스를 실행하기보다는 플레이어 명단을 관리하고 플레이어 간 메시지를 처리합니다. 클라이언트마다 게임 상태가 따로 있으며, 서버를 통해 다른 플레이어에게 메시지가 올 때마다 업데이트됩니다. Strix 서버는 권한과 연결, 라우팅, 방/클라이언트 속성 관리를 처리합니다.

참고

마스터 서버는 방 서버도 됩니다. 이것은 간단한 시험 클러스터에 유용합니다.

Strix Net/Strix Client

기본 Strix 기능을 제공하는 Strix의 클라이언트 측 라이브러리. 이 라이브러리에서 Strix 서버와 메시지를 주고받습니다. 이 라이브러리에서는 매치메이킹, 움직임 보간, 개체 복제와 같은 게임 내 기능도 지원합니다.

Strix SDK

Strix에는 특정 게임 엔진용 SDK도 별도로 있습니다. 따라서 Strix로 쉽게 개발할 수 있으며, 개별 개발 프로세스에도 잘 맞기 때문에 새 도구나 스크립팅/프로그래밍 언어를 배우지 않아도 됩니다. Strix Unreal SDK는 그 기능을 주로 블루프린트 함수와 액터 요소로 제공합니다. 고급 사용자를 위한 C++ API도 있습니다.