이 클래스는 물리 RigidBody 의 속도 들을 동기화 할 수 있도록 해 줍니다. 유니티의 물리엔진이 결정론적이지 않기 때문에 속도들만 동기화 되는 것을 주의 하세요. (즉, 결과들은 모든 컴퓨터에서 동일 하지 않습니다) - 객체들의 실제 위치는 동기화 되지 않을 수 있습니다. 모든 클라이언트가 이 객체의 위치가 동일 해야한다면 위치를 동기화 하기 위하여 PhotonTransformView 를 추가 해야만 합니다. 간단히 게임 오브젝트에 컴포넌트를 추가하여 관찰되는 컴포넌트들의 목록에 PhotonRigidbodyView 가 추가 되었는지 확인 해 주세요. More...
Inherits MonoBehaviour, and IPunObservable.
Public Member Functions | |
void | OnPhotonSerializeView (PhotonStream stream, PhotonMessageInfo info) |
PUN 에 의해서 초당 여러번 호출 됩니다. 따라서 스크립트에서 PhotonView 의 동기화 데이터를 읽고 쓸 수 있습니다. More... | |
이 클래스는 물리 RigidBody 의 속도 들을 동기화 할 수 있도록 해 줍니다. 유니티의 물리엔진이 결정론적이지 않기 때문에 속도들만 동기화 되는 것을 주의 하세요. (즉, 결과들은 모든 컴퓨터에서 동일 하지 않습니다) - 객체들의 실제 위치는 동기화 되지 않을 수 있습니다. 모든 클라이언트가 이 객체의 위치가 동일 해야한다면 위치를 동기화 하기 위하여 PhotonTransformView 를 추가 해야만 합니다. 간단히 게임 오브젝트에 컴포넌트를 추가하여 관찰되는 컴포넌트들의 목록에 PhotonRigidbodyView 가 추가 되었는지 확인 해 주세요.
void PhotonRigidbodyView.OnPhotonSerializeView | ( | PhotonStream | stream, |
PhotonMessageInfo | info | ||
) |
PUN 에 의해서 초당 여러번 호출 됩니다. 따라서 스크립트에서 PhotonView 의 동기화 데이터를 읽고 쓸 수 있습니다.
이 메소드는 PhotonView의 관찰되는 컴포넌트로 할당된 스크립트에서 호출 될 것 입니다.
PhotonNetwork.sendRateOnSerialize 는 이 메소드가 얼마나 자주 호출 되는지에 영향을 줍니다.
PhotonNetwork.sendRate 는 이 클라이언트가 얼마나 자주 패키지를 전송하는 지에 대해서 영향을 미칩니다.
이 메소드를 구현하는 것은 어떤 데이터가 PhotonView 를 주기적으로 동기화하는지 커스터마이징 할 수 있습니다. 코드에서 어떤 것이 전송(컨텐츠)되고 수신 클라이인트가 어떻게 데이터를 사용할지를 정의 합니다.
다른 콜백과 달리 OnPhotonSerializeView 는 PhotonView.observed 스크립트로 PhotonView 에 지정되어 있을 때만 호출 됩니다.
이 메소드를 활용하려면 PhotonStream 이 필수 입니다. PhotonView 를 제어하는 클라이언트에서 "writing" mode" ((PhotonStream.isWriting == true) 로 있을 것이며 제어하는 클라이언트가 전송한 것을 받기만 하는 원격 클라이언트에서는 "reading mode" 로 있을 것 입니다.
스트림에 값 쓰는 것을 스킵하면 PUN 은 업데이트를 스킵할 것 입니다. 주의 해서 사용 하세요. 대역폭과 메시지를 아낄 수 있습니다( 룸/초 당 제한이 있습니다).
sender 가 업데이트를 전송하지 않으면 OnPhotonSerializeView 는 원격 클라이언트에서 호출되지 않는 다는 것을 주의 하세요. "초당 x-번 Update()" 로 사용 될 수 없습니다.
Implements IPunObservable.