[Photon] PhotonView

Flaming Bun·2025년 6월 16일

포톤

목록 보기
4/4

참고 사이트 : https://doc.photonengine.com/ko-kr/pun/current/demos-and-tutorials/pun-basics-tutorial/intro

🔥 PhotonView 컴포넌트

PotonView는 각 컴퓨터의 다양한 인스턴스를 하나로 연결하며 어떤 컴포넌트들을 관찰하고 어떻게 관찰 할지 정의 해 준다.


플레이어에 [PhotonView] 컴포넌트를 추가한다.


Photon Transform View 컴포넌트

객체의 Transform을 다른 컴퓨터와 동기화할 때

[Photon Transform View] 컴포넌트를 사용한다.


[Photon Transform View] 컴포넌트를 추가한다.


[Photon Transform View] 컴포넌트를

[PhotonView] 컴포넌트의 Observed Components에 할당한다.


Photon Animator View 컴포넌트

객체의 애니메이션을 동기화할 때
[Photon Animator View] 컴포넌트를 사용한다.


[Photon Animator View] 컴포넌트를

[PhotonView] 컴포넌트의 Observed Components에 할당한다.

동기화할 파라미터를 *Discrete로 설정한다.

  • Discrete: 변화가 있을 때만 파라미터 값을 전송한다.
  • Continuous: 매 프레임의 값 중 마지막 호출을 같이 전송한다.(더 부드럽다 하지만 더 많은 데이터를 전송한다.)
    둘 다 OnPhotonSerializeView가 호출되었을 때 수신 클라이언트들에게 초당 10번 값이 전송된다.

사용자 입력

동일한 프리팹 인스턴스가 생성됐지만 실제 플레이 하고 있는 사용자는 하나다.

멀티플레이의 어려운 점은 "입력 관리"로, 모든 사용자가 하나의 인스턴스에
입력을 사용하며 어떤 플레이어가 내 것인지 판단하기 위해서는 isMine을 사용한다.


MonoBehaviourPun을 상속받고,

if (photonView.IsMine == false && PhotonNetwork.IsConnected == true)
{
    return;
}

위 코드를 추가해서 자신의 플레이어만 조작할 수 있다.

0개의 댓글