IT/서버

VR 서버 개발 계획서_Photon 제품 비교

1am_wish 2021. 1. 27. 02:23
728x90
반응형

Photon 주요 제품의 구조

위 그림과 같이 REALTIME은 모든 Photon의 클라우드 서비스에 접속하는 핵심 API PUN, BOLT 그리고 QUANTUM의 베이스가 된다.

Photon 제품의 특징

각 제품별 간단한 특징

1. PUN2

PUN2는 고급적인 전송 매커니즘 및 분산형 판단의 특색을 갖추고 있다. 전속 또는 지정된 클라이언트가 Relay Server로서 정보를 전달하고, 게임룸의 개념을 가지고 있어서 유저가 게임룸에 참가하여 바로 게임을 진행할 수 있다.

PUN2에 적합한 게임 유형으로는 RPG, Puzzle, Turn-base 등이 있.

2. Bolt

Bolt Client-Hosted 구조를 사용하여, 클라이언트가 플레이어일 수도 있으며 서버가 될 수 있도록 설계되어있다. Bolt 3D 충돌(Hit-Box), 결정론적 알고리즘(Deterministic algorithm)과 롤백(Roll-Back) 등의 메커니즘을 갖추고 있다. 클라이언트와 서버를 P2P 방식으로 서버에 직접적으로 연결하여 입력 데이터가 서버로 전송되면, 서버는 시뮬레이션 계산을 통해 해당 결과를 클라이언트 측과 함께 비교한다. 클라이언트에서 예측한 결과와 서버의 시뮬레이션 계산 결과가 동일하지 않을 경우, 클라이언트의 변경 내용이 롤백 된다.

Bolt에 적합한 게임 유형은 FPS/TPS-A uthoritative 유형의 1,3인칭 슈팅 게임, Battle(Shooter) 슈팅 대전 게임, VR/Ar/MR 게임, 파티 게임, 액션/RPG 게임, Co-oP 게임, 협동/건축 게임 등과 같이 전용 서버 필요 없는 유형들이다.

3. Quantum

Quantum은 빠르게 진행되는 멀티플레이어가 실시간으로 플레이 할 수 있는 액션 게임에 적합하다. 클라이언트의 직접적인 시뮬레이션으로 모든 것이 처리되며, 작업 데이터가 전송되기 전에 여러 개의 틱(tick)이 대기하여, 수집된 다른 작업 데이터와 같이 시뮬레이션 및 판정 계산을 한다. 또한, 플레이어 간에 데이터만 전송하기 때문에 네트워크 대역폭의 사용량이 매우 적어진다. 이 엔진에서는 기존 LockStepping 방식의 시간 소모 및 대역폭을 사용하는 대신 최상의 예측/롤백 결정론적 알고리즘을 사용한다.

Quantum에 적합한 게임으로는 MOBA(멀티플레이어 온라인 배틀 아레나)와 같이 동작이 빠르고 실시간으로 동기화되는 게임, RTS(실시간 전략 게임), 여러 개의 사물을 실시간으로 제어하여 채집/건설/발전시키는 게임 (예를 들어, 스타크래프트 등), E-Sports 게임, Fighting Game간의 1vs1, 2vs2형식(예를 들어, 스트리트 파이터, 더 킹 오브 파이터즈 등)이 있다.

4. 결론

위 세가지를 비교해 봤을때 우리는 PUN2를 사용하는게 가장 적합한 것 같다.

728x90
반응형