참고 사이트 : https://doc.photonengine.com/ko-kr/pun/current/demos-and-tutorials/pun-basics-tutorial/intro
PotonView는 각 컴퓨터의 다양한 인스턴스를 하나로 연결하며 어떤 컴포넌트들을 관찰하고 어떻게 관찰 할지 정의 해 준다.
플레이어에 [PhotonView] 컴포넌트를 추가한다.
객체의 Transform을 다른 컴퓨터와 동기화할 때
[Photon Transform View] 컴포넌트를 사용한다.
[Photon Transform View] 컴포넌트를 추가한다.
[Photon Transform View] 컴포넌트를[PhotonView] 컴포넌트의
Observed Components에 할당한다.
객체의 애니메이션을 동기화할 때
[Photon Animator View] 컴포넌트를 사용한다.
[Photon Animator View] 컴포넌트를[PhotonView] 컴포넌트의
Observed Components에 할당한다.동기화할 파라미터를
*Discrete로 설정한다.
- Discrete: 변화가 있을 때만 파라미터 값을 전송한다.
- Continuous: 매 프레임의 값 중 마지막 호출을 같이 전송한다.(더 부드럽다 하지만 더 많은 데이터를 전송한다.)
둘 다 OnPhotonSerializeView가 호출되었을 때 수신 클라이언트들에게 초당 10번 값이 전송된다.
동일한 프리팹 인스턴스가 생성됐지만 실제 플레이 하고 있는 사용자는 하나다.
멀티플레이의 어려운 점은 "입력 관리"로, 모든 사용자가 하나의 인스턴스에
입력을 사용하며 어떤 플레이어가 내 것인지 판단하기 위해서는 isMine을 사용한다.
MonoBehaviourPun을 상속받고,if (photonView.IsMine == false && PhotonNetwork.IsConnected == true) { return; }위 코드를 추가해서 자신의 플레이어만 조작할 수 있다.