shared server(포톤 전용 개념)

댓글 1
댓글을 작성하려면 로그인이 필요합니다.
Shared server = 권위(누가 오브젝트 상태를 결정하는가)를 클라이언트들끼리 나눠 갖는 방식
(단, 클라이언트끼리 직접 연결하는 게 아니라 항상 Photon Cloud를 거쳐서 통신함)
Shared Mode는 클라이언트끼리 직접 연결을 시도하지 않는다. 항상 클라우드(Photon Cloud)한테만 연결함
| 연결 대상 | |
|---|---|
| P2P (풀메시) | 클라이언트끼리 서로 직접 |
| Host Server | 클라이언트 → 호스트 (직접 연결 시도, 실패시 Relay) |
| Shared Server | 클라이언트 → 클라우드 (항상 이 경로만, P2P 시도 자체가 없음) |
| Dedicated Server | 클라이언트 → 전용 서버 |
구조만 보면 오히려 Dedicated Server랑 비슷함 (둘 다 한 곳에 연결하는 스타형)
다른 점은 그 중앙이 "개발자가 만든 게임 서버"냐 "포톤이 관리하는 클라우드"냐
기본 규칙: 오브젝트를 스폰한 클라이언트가 자동으로 그 오브젝트의 StateAuthority(상태 결정권)를 가짐.
예외 : 씬에 미리 배치된 오브젝트는 SharedModeMasterClient(방장 역할, 실제 서버는 아님)가 권위를 가짐.
(방장은 먼저 들어온 사람임, 나가면 자동으로 교체되며 권위 선택 기준이 없을 경우를 위한 기본값이라 보면 편함)
Fusion은 세션 시작할 때 GameMode(Host/Server/Shared) 하나를 확정해야 함.
Shared Mode를 고르는 순간 "호스트라는 개체 자체가 없다"는 걸 선택한 거라,
Host Mode나 Dedicated Server와 한 세션 안에서 동시에 쓸 수 없음

Paddle Paddle Paddle(솔로 개발 Steam 게임)
게임요약: 플레이어 두 명이 노를 하나씩 잡아 협동하여 스테이지를 클리어 하는 게임 (Host Mode 방식)
이 게임은 보트하나에 한 명씩 타서 경쟁하는 모드가 추가됐는데 호스트와 클라이언트의 차이로 게임조작이 나빠졌음
이 제약 안에서, 보트를 1명이 조작하면 Shared Mode 방식, 2명이 같이 조작하면 Host Mode 방식으로 오브젝트 단위 처리 로직을 다르게 구현함 <Photon과 개발자의 1:1 인터뷰 링크>

디벨로그에서 쓰다가 마우스 뒤로가기 버튼 눌러져서 요약부터 처음까지 다시 썼다. 마우스 설정 바꿨고, 앞으론 노션에 쓰고 복붙해야겠다.
@신재윤 안녕하세요! 글쓰기에 자동 임시저장 기능이 추가되었습니다. 이제 작성 중인 본문 글이 30초마다 자동으로 저장됩니다. Develog를 쓰시면서 불편을 드려 죄송합니다. 사용하시다가 추가로 불편한 점이 있으면 우측 상단 화살표를 눌러 오류 제보 주시면 적극 반영하겠습니다!