관심 그룹
Photon의 "관심 그룹"은 룸 안에서의 대화에 대한 하위 채널로 생각할 수 있습니다:
클라이언트들은 구독중인 관심그룹의 메시지만 받습니다(그리고 그룹 0).
클라이언트들은 원하는 어떤 그룹에서 모든 이벤트를 전송할 수 있습니다.
이 간단한 기능은 기본 관심 관리 또는 부합한 방식 어디에서도 사용 할 수 있습니다.
아래의 유즈케이스 예제를 확인해보시기 바랍니다.
사용가능 그룹
클라이언트는 명시적으로 관심 그룹을 생성할 필요는 없습니다.
관심 그룹은 필요시에 생성됩니다. 즉, 액터가 새로운 그룹 멤버로 구독했을 때, 서버가 관심그룹을 생성할 것 입니다.
Photon은 최대 256개의 관심 그룹을 제공합니다.
그룹 번호 0은 예약된 것으로 브로드캐스팅을 의미합니다: 룸 내부에 있는 모든 액터들(클라이언트들)은 그룹 0을 구독하며 구독해제를 할 수는 없습니다.
나머지 255개 그룹은 자유롭게 개발자가 사용할 수 있습니다.
그룹 > 0에 지정된 모든 이벤트는 서버가 이벤트를 전달 할 때 룸 내의 그룹에 관심을 가지고 있는 클라이언트들에게만 전송됩니다.
전역 설정
가입된 그룹의 목록은 룸 안에서 언제든지 다음을 사용하여 번호를 추가하거나 제거하여 갱신 할 수 있습니다:
유즈 케이스 예제
관심 그룹들은 룸 안에서 초당 메시지 갯수가 낮을 때 유용합니다.
메시지/초 한도를 낮게 유지하여 트래픽 양을 적게 함으로써, 비용 절감과 때로는 룸별로 최대 플레이어 수를 증가하는 데 도움을 줄 수 있습니다.
그러나 게임에서 관심 분야 그룹을 사용하는 다른 현명한 방법을 찾아 볼 수 있습니다.
네트워크 컬링
가장 일반적인 관심 그룹의 유즈 케이스는 네트워크 컬링 입니다.
관심 그룹은 게임내의 관심 지역과 매핑될 수 있습니다.
예를들어, "아주 큰 뚱보 세계"가 있다면 작은 부분으로 분리 할 수 있을 것이고 이것을 지역이라고 가정하면, 지역별로 그룹을 지정할 수 있습니다.
팀 이벤트
게임내에서 팀이 있고 팀 배타적인 이벤트가 필요한 경우, 팀별로 관심 그룹을 지정할 수 있습니다.
모든 팀 멤버들은 팀의 관심 그룹을 구독해야 합니다.
내부 팀 이벤트들은 팀 자체 그룹 번호를 사용하여 전송되어야 합니다.
외부 팀 이벤트들은 상대 팀의 그룹 번호를 사용하여 전송되어야 합니다.