[Unity] Photon의 PUN2에서 임의의 타이밍에 메서드 실행하기
photon은 유료이지만, 멀티플레이를 쉽게 구현할 수 있어서 좋아요.
지금은 fusion이라는 새로운 계획이 있는데, 아직 pun2를 사용하고 있는 프로젝트도 있고, 임의의 타이밍에 메소드를 실행하는 스크립트를 작성해보고 싶어요.
using UnityEngine; using Photon.Pun; public class PunTest : MonoBehaviourPunCallbacks { void Start() { } void Update() { } photonView.RPC("RPCTest", RpcTarget.All, "뽀롱뽀롱"); } } [PunRPC] void RPCTest(string str) { Debug.Log(str); } }
실제 프로젝트에서 이런 식으로 작성하지는 않겠지만, 참고용으로 ……
이 코드에서는 Update 때마다 photonView.RPC(“RPCTest”, RpcTarget.All, “뿅~”);을 실행하여 RPCTest를 호출하고 있습니다.
RpcTarget.All을 지정했기 때문에 룸에 있는 모든 플레이어가 RPCTest를 실행하고 “뿅~”하고 디버깅 로그를 출력합니다.
아니, 사실 이런 케이스는 없지만, 실제 프로젝트의 코드 일부를 작성할까 하다가 내용을 보고 ‘아, 보여줄 수 없겠다’는 생각이 들어서 굉장히 적당히 작성했습니다. 죄송합니다.