네트워킹을 위한 PUN의 NetworkView 대체 클래스. NetworkView 와 같이 사용 합니다. More...
Inherits Photon.MonoBehaviour.
Public Member Functions | |
| void | RequestOwnership () |
| PhtonView 의 소유권 이전 설정에 따라 모든 클라이언트가 이 PhotonView 의 소유권을 요청 할 수 있습니다. More... | |
| void | TransferOwnership (PhotonPlayer newOwner) |
| 이 PhotonView (그리고 게임오브젝트)의 소유권을 다른 플레이어로 이전 합니다. More... | |
| void | TransferOwnership (int newOwnerId) |
| 이 PhotonView (그리고 게임오브젝트)의 소유권을 다른 플레이어로 이전 합니다. More... | |
| void | OnMasterClientSwitched (PhotonPlayer newMasterClient) |
| MasterClient 에 의해 소유가 유지되는 것을 지속하기 위해 sceneObjects 들에게 ownerId 를 지정하는 것을 검토하세요. More... | |
| void | SerializeView (PhotonStream stream, PhotonMessageInfo info) |
| void | DeserializeView (PhotonStream stream, PhotonMessageInfo info) |
| void | RefreshRpcMonoBehaviourCache () |
| PhotonNetwork.UseRpcMonoBehaviourCache 가 true 일 경우 이 게임오브젝트의 MonoBehaviours 의 목록을 갱신하는데 사용 될 수 있습니다. More... | |
| void | RPC (string methodName, PhotonTargets target, params object[] parameters) |
| 이 룸내 리모트 클라이언트로 이 게임오브젝의 RPC 메소드를 호출 합니다.(또는 이 클라이언트를 포함한 전체에게) More... | |
| void | RpcSecure (string methodName, PhotonTargets target, bool encrypt, params object[] parameters) |
| 이 룸의 리모트 클라이언트에 있는 이 게임오브젝트의 RCP 메소드를 호출 합니다.(또는 이 클라이언트를 포함한 모두). More... | |
| void | RPC (string methodName, PhotonPlayer targetPlayer, params object[] parameters) |
| 이 룸의 리모트 클라이언트에 있는 이 게임오브젝트의 RCP 메소드를 호출 합니다.(또는 이 클라이언트를 포함한 모두). More... | |
| void | RpcSecure (string methodName, PhotonPlayer targetPlayer, bool encrypt, params object[] parameters) |
| 이 룸의 리모트 클라이언트에 있는 이 게임오브젝트의 RPC 메소드를 호출 합니다.(또는 이 클라이언트를 포함한 모두). More... | |
| override string | ToString () |
Static Public Member Functions | |
| static PhotonView | Get (Component component) |
| static PhotonView | Get (GameObject gameObj) |
| static PhotonView | Find (int viewID) |
Public Attributes | |
| int | ownerId |
| int | group = 0 |
| bool | OwnerShipWasTransfered |
| 생명주기동안 설정되어 이 PhotonView 의 소유권을 체크하는 플래그입니다. 지연 참여시 소유자가 맞지않고 전송자에게 알려줄 필요가 있는 경우 검토할 때 사용합니다. More... | |
| int | prefixBackup = -1 |
| ViewSynchronization | synchronization |
| OnSerializeTransform | onSerializeTransformOption = OnSerializeTransform.PositionAndRotation |
| OnSerializeRigidBody | onSerializeRigidBodyOption = OnSerializeRigidBody.All |
| OwnershipOption | ownershipTransfer = OwnershipOption.Fixed |
| 이 PhotonView 의 소유권이 고정되어 있으면 소유권 요청 또는 가져가는 것을 정의 합니다. More... | |
| List< Component > | ObservedComponents |
| int | instantiationId |
| int | currentMasterID = -1 |
| 현재 마스터 ID로 OnMasterClientSwitched() 콜백을 수신할 때 비교해 볼 수 있습니다. 공개이므로 networkPeer 스크립트 내에서 ownerId 지정동안에 검토해 볼 수 있습니다. TODO: 이전의 MasterClient 를 항상 알고 networkPeer 를 가질 수 있을까요? More... | |
Properties | |
| int | prefix [get, set] |
| object[] | instantiationData [get, set] |
| PhotonNetwork.Instantiate* 를 호출 할 때 전달 되는 instantiationData 입니다 (이 프리팹을 스폰하기 위해서 사용된다면) More... | |
| int | viewID [get, set] |
| PhotonView 의 ID. 네트워크 게임에서 PhotonView 를 식별 합니다(룸에서). More... | |
| bool | isSceneView [get] |
| 씬(게임오브젝트)에서 PhtonView 가 로드 되었거나 InstantiateSceneObject 로 인스턴스가 생성 되었으면 true. More... | |
| PhotonPlayer | owner [get] |
| PhotonView 의 소유자로 해당 뷰에서 게임오브젝트를 생성한 플레이어 입니다. 이 씬에 있는 객체들은 소유자가 없습니다. More... | |
| int | OwnerActorNr [get] |
| bool | isOwnerActive [get] |
| int | CreatorActorNr [get] |
| bool | isMine [get] |
| PhotonView 가 "mine" 인 경우에 true 이며 이 클라이언트가 제어 할 수 있습니다. More... | |
Properties inherited from Photon.MonoBehaviour | |
| PhotonView | photonView [get] |
| 이 게임에 있는 PhotonView 의 캐시된 참조. More... | |
| new PhotonView | networkView [get] |
| 유효 기간이 지난 값을 사용할 때 개발자들에게 알려주기 위해서 사용되는 프로퍼티 입니다. More... | |
네트워킹을 위한 PUN의 NetworkView 대체 클래스. NetworkView 와 같이 사용 합니다.
| void PhotonView.DeserializeView | ( | PhotonStream | stream, |
| PhotonMessageInfo | info | ||
| ) |
|
static |
|
static |
|
static |
| void PhotonView.OnMasterClientSwitched | ( | PhotonPlayer | newMasterClient | ) |
MasterClient 에 의해 소유가 유지되는 것을 지속하기 위해 sceneObjects 들에게 ownerId 를 지정하는 것을 검토하세요.
| newMasterClient | 새로운 마스터 클라이언트. |
| void PhotonView.RefreshRpcMonoBehaviourCache | ( | ) |
PhotonNetwork.UseRpcMonoBehaviourCache 가 true 일 경우 이 게임오브젝트의 MonoBehaviours 의 목록을 갱신하는데 사용 될 수 있습니다.
캐싱을 하기 위하여 PhotonNetwork.UseRpcMonoBehaviourCache 을 true 로 설정 합니다. (잠재적으로)RPC를 호출하기 위하여 MonoBehaviours 의 리스트를 얻기 위해서는 this.GetComponents<MonoBehaviour>()를 사용 합니다.
RPC 가 호출 될 때 리스트가 갱신 되기 때문에 PhotonNetwork.UseRpcMonoBehaviourCache 가 false 이면 이 메소드는 효과가 없습니다.
| void PhotonView.RequestOwnership | ( | ) |
PhtonView 의 소유권 이전 설정에 따라 모든 클라이언트가 이 PhotonView 의 소유권을 요청 할 수 있습니다.
ownershipTransfer 설정이 소유권 이전을 할 수 있도록 설정 되어 있으면 소유권 요청은 PhotonView 에 대한 제어권을 줄 수 있습니다. 현재 소유자는 소유권 요청을 처리하기 위한 IPunCallbacks.OnOwnershipRequest 를 구현 해야 합니다.
PhotonView 의 소유자/제어자로 게임오브젝트의 위치 갱신정보를 보내는 클라이언트 입니다.
| void PhotonView.RPC | ( | string | methodName, |
| PhotonTargets | target, | ||
| params object[] | parameters | ||
| ) |
이 룸내 리모트 클라이언트로 이 게임오브젝의 RPC 메소드를 호출 합니다.(또는 이 클라이언트를 포함한 전체에게)
Remote Procedure Calls은 PUN 으로 멀티플레이어 게임 제작시 필수 도구 입니다. 룸 내의 모든 클라이언트가 특정 메소드를 호출 할 수 있도록 해 줍니다.
RPC 호출의 대상은 "모두" 또는 "다른사람" 들이 될 수 있습니다. 일반적으로 "모든" 대상은 RCP 전송 후에 즉시 로컬에서 실행 됩니다. "*ViaServer" 옵션은 RPC 를 서버에 전송하고 다시 전송이 되돌아 왔을 때 이 클라이언트에서 실행 됩니다. 물론, 호출들은 이 클라이언트의 lag 와 리모트 클라이언트에 영향을 주게 됩니다.
각 호출은 자동적으로 발생 클라이언트에서 사용 되었던 동일한 PhotonView (그리고 게임오브젝트) 에 라우팅 됩니다.
| methodName | RPC 속성을 가지고 있는 메소드의 이름. |
| target | 타겟들의 그룹과 RPC 가 전송되는 방법. |
| parameters | RPC 메소드의 파라미터들(이 호출과 맞아야 합니다!). |
| void PhotonView.RPC | ( | string | methodName, |
| PhotonPlayer | targetPlayer, | ||
| params object[] | parameters | ||
| ) |
이 룸의 리모트 클라이언트에 있는 이 게임오브젝트의 RCP 메소드를 호출 합니다.(또는 이 클라이언트를 포함한 모두).
Remote Procedure Calls은 PUN 을 이용한 멀티플레이어 게임 제작시 필수 도구 입니다. 룸 내의 모든 클라이언트가 특정 메소드를 호출 할 수 있도록 해 줍니다.
이 메소드는 지정한 플레이어의 클라이언트에 RPC 호출을 할 수 있도록 합니다. 물론, 호출들은 이 클라이언트의 lag 와 리모트 클라이언트에 영향을 주게 됩니다.
각 호출은 자동적으로 발생 클라이언트에서 사용 되었던 동일한 PhotonView (그리고 게임오브젝트) 에 라우팅 됩니다.
| methodName | RPC 속성을 가지고 있는 메소드의 이름. |
| targetPlayer | 타켓들의 그룹과 RPC 가 전송되는 방법. |
| parameters | RPC 메소드의 파라미터들(이 호출과 맞아야 합니다!). |
| void PhotonView.RpcSecure | ( | string | methodName, |
| PhotonTargets | target, | ||
| bool | encrypt, | ||
| params object[] | parameters | ||
| ) |
이 룸의 리모트 클라이언트에 있는 이 게임오브젝트의 RCP 메소드를 호출 합니다.(또는 이 클라이언트를 포함한 모두).
Remote Procedure Calls은 PUN 을 이용한 멀티플레이어 게임 제작시 필수 도구 입니다. 룸 내의 모든 클라이언트가 특정 메소드를 호출 할 수 있도록 해 줍니다.
RPC 호출의 대상은 "모두" 또는 "다른사람" 들이 될 수 있습니다. 일반적으로 "모든" 대상은 RPC 전송 후에 즉시 로컬에서 실행 됩니다. "*ViaServer" 옵션은 RPC 를 서버에 전송하고 다시 전송이 되돌아 왔을 때 이 클라이언트에서 실행 됩니다. 물론, 호출들은 이 클라이언트의 lag 와 리모트 클라이언트에 영향을 주게 됩니다.
각 호출은 자동적으로 발생 클라이언트에서 사용 되었던 동일한 PhotonView (그리고 게임오브젝트) 에 라우팅 됩니다.
| methodName | RPC 속성을 가지고 있는 메소드의 이름. |
| target | 타겟들의 그룹과 RPC 가 전송되는 방법. |
| encrypt | |
| parameters | RPC 메소드의 파라미터들(이 호출과 맞아야 합니다!). |
| void PhotonView.RpcSecure | ( | string | methodName, |
| PhotonPlayer | targetPlayer, | ||
| bool | encrypt, | ||
| params object[] | parameters | ||
| ) |
이 룸의 리모트 클라이언트에 있는 이 게임오브젝트의 RPC 메소드를 호출 합니다.(또는 이 클라이언트를 포함한 모두).
Remote Procedure Calls은 PUN 을 이용한 멀티플레이어 게임 제작시 필수 도구 입니다. 룸 내의 모든 클라이언트가 특정 메소드를 호출 할 수 있도록 해 줍니다.
이 메소드는 지정한 플레이어의 클라이언트에 RPC 호출을 할 수 있도록 합니다. 물론, 호출들은 이 클라이언트의 lag 와 리모트 클라이언트에 영향을 주게 됩니다.
각 호출은 자동적으로 발생 클라이언트에서 사용 되었던 동일한 PhotonView (그리고 게임오브젝트) 에 라우팅 됩니다.
param name="methodName">RPC 속성을 가지고 있는 메소드의 이름.
param name="targetPlayer">타겟들의 그룹과 RPC 가 전송되는 방법.
param name="encrypt">
param name="parameters">RPC 메소드의 파라미터들(이 호출과 맞아야 합니다!).
| void PhotonView.SerializeView | ( | PhotonStream | stream, |
| PhotonMessageInfo | info | ||
| ) |
| override string PhotonView.ToString | ( | ) |
| void PhotonView.TransferOwnership | ( | PhotonPlayer | newOwner | ) |
이 PhotonView (그리고 게임오브젝트)의 소유권을 다른 플레이어로 이전 합니다.
PhotonView 의 소유자/제어자로 게임오브젝트의 위치 갱신정보를 보내는 클라이언트 입니다.
| void PhotonView.TransferOwnership | ( | int | newOwnerId | ) |
이 PhotonView (그리고 게임오브젝트)의 소유권을 다른 플레이어로 이전 합니다.
PhotonView 의 소유자/제어자로 게임오브젝트의 위치 갱신정보를 보내는 클라이언트 입니다.
| int PhotonView.currentMasterID = -1 |
현재 마스터 ID로 OnMasterClientSwitched() 콜백을 수신할 때 비교해 볼 수 있습니다. 공개이므로 networkPeer 스크립트 내에서 ownerId 지정동안에 검토해 볼 수 있습니다. TODO: 이전의 MasterClient 를 항상 알고 networkPeer 를 가질 수 있을까요?
| int PhotonView.group = 0 |
| int PhotonView.instantiationId |
| List<Component> PhotonView.ObservedComponents |
| OnSerializeRigidBody PhotonView.onSerializeRigidBodyOption = OnSerializeRigidBody.All |
| OnSerializeTransform PhotonView.onSerializeTransformOption = OnSerializeTransform.PositionAndRotation |
| int PhotonView.ownerId |
| OwnershipOption PhotonView.ownershipTransfer = OwnershipOption.Fixed |
이 PhotonView 의 소유권이 고정되어 있으면 소유권 요청 또는 가져가는 것을 정의 합니다.
실행시에는 변경 할 수 없습니다. 옵션들은 OwnershipOption enum 에 설명되어 있습니다. 현재의 소유자는 IPunCallbacks.OnOwnershipRequest 를 구현하여 소유권 요청에 대한 응대를 해야 합니다.
| bool PhotonView.OwnerShipWasTransfered |
생명주기동안 설정되어 이 PhotonView 의 소유권을 체크하는 플래그입니다. 지연 참여시 소유자가 맞지않고 전송자에게 알려줄 필요가 있는 경우 검토할 때 사용합니다.
소유권이 전이 되었으면 true, 그외에는 false.
| int PhotonView.prefixBackup = -1 |
| ViewSynchronization PhotonView.synchronization |
|
get |
|
getset |
PhotonNetwork.Instantiate* 를 호출 할 때 전달 되는 instantiationData 입니다 (이 프리팹을 스폰하기 위해서 사용된다면)
|
get |
PhotonView 가 "mine" 인 경우에 true 이며 이 클라이언트가 제어 할 수 있습니다.
PUN 은 각 PhotonView 를 누가 제어하며 제거하는가를 정의하는 소유권 개념이 있습니다. 로컬 PhotonPLayer 와 소유자가 일치하는 경우에 true 입니다. 마스터 클라이언트 상의 씬 PhotonView 이면 true 입니다.
|
get |
|
get |
씬(게임오브젝트)에서 PhtonView 가 로드 되었거나 InstantiateSceneObject 로 인스턴스가 생성 되었으면 true.
씬 객체들은 특정 플레이어가 소유하지 않고 씬이 소유하고 있습니다. 따라서 씬 객체들은 생성자가 룸을 떠나도 없어지지 않으며 현재의 마스터 클라이언트(누가 되던지 간에)가 씬 객체들을 제어 할 수 있습니다. ownerId 는 0 입니다(플레이어 ID는 1 이상입니다).
|
get |
PhotonView 의 소유자로 해당 뷰에서 게임오브젝트를 생성한 플레이어 입니다. 이 씬에 있는 객체들은 소유자가 없습니다.
PhotonView 의 소유자/제어자로 게임오브젝트의 위치 갱신정보를 보내는 클라이언트 입니다.
소유권은 PhotonView.TransferOwnership 로 다른 플레이어에게 이관될 수 있고 다른 플레이어가 PhotonView 의 RequestOwnership 를 호출 하여 소유권을 요청 할 수 있습니다. 현재의 소유자는 소유권 요청을 처리 하기 위해서 IPunCallbacks.OnOwnershipRequest 를 구현 해야 합니다.
|
get |
|
getset |
|
getset |
PhotonView 의 ID. 네트워크 게임에서 PhotonView 를 식별 합니다(룸에서).
참고: Network 인스턴스 생성