[photon] Network Object 컴포넌트에서 is Master Client Object 옵션은 뭘 의미하나?

반응형

아하! 말씀하신 건 Fusion의 NetworkObject 컴포넌트 안에 있는 옵션 중에서
Is Master Client Object라는 체크박스 설정 항목이 맞습니다 ✅


🔹 Is Master Client Object 옵션이란?

이 옵션은 Shared Mode일 때 **"이 오브젝트는 마스터 클라이언트만 소유한다"**는 것을 Fusion에게 알려주는 설정이에요.


✅ 기능 요약

항목 설명

위치 NetworkObject 컴포넌트 안의 Shared Mode Settings 영역
역할 이 오브젝트는 마스터 클라이언트가 StateAuthority를 갖도록 강제
적용 조건 Shared Mode일 때만 의미 있음
체크 시 동작 마스터가 아닌 클라이언트는 이 오브젝트에 대한 StateAuthority를 절대 가질 수 없음

🔍 예를 들어

  • GameManager 같이 전역 상태를 관리하는 오브젝트는 마스터 클라이언트만 제어해야 하므로 이 옵션을 체크해야 합니다.
  • 반대로, Character나 PlayerObject처럼 각 플레이어가 제어해야 하는 오브젝트체크하면 안 됨 (그 플레이어가 권한 가져야 하니까).

🔐 사용 예시

if (Object.HasStateAuthority) {
    // 이 오브젝트를 제어할 권한이 있는 경우 (여기선 마스터만 가능)
}

⚠️ 주의사항

  • 이 옵션이 체크돼 있으면 다른 클라이언트에서 RequestAuthority를 해도 무시됩니다.
  • 이 옵션은 자동으로 권한을 부여하는 용도일 뿐, 직접 체크해서 쓸 수 있는 IsMasterClientObject 프로퍼티 같은 건 없습니다.

필요하다면 어떤 오브젝트에 이 옵션을 켜야 할지 판단 기준도 알려드릴게요.

반응형