Photon Unity Networking 2  v2.1
English | 日本語 | 한국
Classes | Enumerations | Functions
Public API

早い段階で理解する必要のある最も重要なクラスをまとめます。 More...

Classes

class  PhotonNetwork
 PhotonNetworkプラグインを使うためのメインクラスです。 このクラスは静的クラスです。 More...
 
class  PhotonView
 PhotonViewはネットワーク上のオブジェクト(viewID)を識別し、制御クライアントがリモートインスタンスを更新する方法を設定します。 More...
 
struct  PhotonMessageInfo
 特定のメッセージ、RPC、または更新に関する情報のコンテナクラス。 More...
 
class  PhotonStream
 このコンテナは、OnPhotonSerializeView ()でPhotonViewの受信データを提供するため、またはあなたが提供するために使用されます。 More...
 

Enumerations

enum  ClientState
 State values for a client, which handles switching Photon server types, some operations, etc. More...
 
enum  PunLogLevel
 PUNのクラスで生成されたログの出力レベルを決めるのに使われます。errorsか、info(やや多い)か、fullのいずれかです。 More...
 
enum  RpcTarget
 RPCのための「ターゲット」オプションを列挙したものです。これはどのリモートクライアントが自分のRPCコールを受信するかを定義します。 More...
 

Functions

void OnPhotonSerializeView (PhotonStream stream, PhotonMessageInfo info)
 スクリプトがPhotonViewの同期データを読み書きできるように、PUNによって1秒間に数回呼び出されます。 More...
 

Detailed Description

早い段階で理解する必要のある最も重要なクラスをまとめます。

Enumeration Type Documentation

enum ClientState

State values for a client, which handles switching Photon server types, some operations, etc.

Enumerator
PeerCreated 

Peer is created but not used yet.

Authenticating 

Transition state while connecting to a server. On the Photon Cloud this sends the AppId and AuthenticationValues (UserID).

Authenticated 

Transition state while connecting to a server. Leads to state ConnectedToMasterserver or JoinedLobby.

JoiningLobby 

The client sent an OpJoinLobby and if this was done on the Master Server, it will result in. Depending on the lobby, it gets room listings.

JoinedLobby 

The client is in a lobby, connected to the MasterServer. Depending on the lobby, it gets room listings.

DisconnectingFromMasterserver 

Transition from MasterServer to GameServer.

ConnectingToGameserver 

Transition to GameServer (client authenticates and joins/creates a room).

ConnectedToGameserver 

Connected to GameServer (going to auth and join game).

Joining 

Transition state while joining or creating a room on GameServer.

Joined 

The client entered a room. The CurrentRoom and Players are known and you can now raise events.

Leaving 

Transition state when leaving a room.

DisconnectingFromGameserver 

Transition from GameServer to MasterServer (after leaving a room/game).

ConnectingToMasterserver 

Connecting to MasterServer (includes sending authentication values).

Disconnecting 

The client disconnects (from any server). This leads to state Disconnected.

Disconnected 

The client is no longer connected (to any server). Connect to MasterServer to go on.

ConnectedToMasterserver 

Connected to MasterServer. You might use matchmaking or join a lobby now.

ConnectedToMaster 

Connected to MasterServer. You might use matchmaking or join a lobby now.

ConnectingToNameServer 

Client connects to the NameServer. This process includes low level connecting and setting up encryption. When done, state becomes ConnectedToNameServer.

ConnectedToNameServer 

Client is connected to the NameServer and established enctryption already. You should call OpGetRegions or ConnectToRegionMaster.

DisconnectingFromNameServer 

Clients disconnects (specifically) from the NameServer (usually to connect to the MasterServer).

enum PunLogLevel

PUNのクラスで生成されたログの出力レベルを決めるのに使われます。errorsか、info(やや多い)か、fullのいずれかです。

Enumerator
ErrorsOnly 

エラーだけを表示します。出力は最小限です。注記: そのうちのいくつかは想定しなくてはならない「実行時エラー」かもしれません。

Informational 

いくつかの処理の流れ、呼び出しと結果をログに記録します。

Full 

利用可能なログはすべてconsole/logにログとして記録します。デバッグにのみ使用します。

enum RpcTarget

RPCのための「ターゲット」オプションを列挙したものです。これはどのリモートクライアントが自分のRPCコールを受信するかを定義します。

Enumerator
All 

RPCを他のプレイヤー全員に送信して、このクライアントで即座に実行します。後で入ってきたプレイヤーはこのRPCを実行しません。

Others 

RPCを他のプレイヤー全員に送信します。このクライアントはRPCを実行しません。後で入ってきたプレイヤーはこのRPCを実行しません。

MasterClient 

RPCをMasterClientだけに送信します。注記: MasterClientはRPCを実行する前に切断され、RPCが欠損する原因になるかもしれません。

AllBuffered 

RPCを他のプレイヤー全員に送信して、このクライアントで即座に実行します。新規プレイヤーがルームに入室すると、RPCがバッファリングされている順番通りRPCを受信します(このクライアントが退室するまで)。

OthersBuffered 

RPCを全員に送信します。このクライアントはRPCを実行しません。新規プレイヤー受信がルーム入室すると、RPCがバッファリングされているされている順番通りRPCを受信します(このクライアントが退室するまで)。

AllViaServer 

RPCをサーバーを介して(このクライアントも含む)全員に送信します。

このクライアントは、他のクライアントと同じように、サーバーからRPCを受信したときにRPCを実行します。 Benefit: 利点: サーバーのRPC送信順は、どのクライアントに対しても同じになります。

AllBufferedViaServer 

サーバーを介してRPCを後から入ってくるプレイヤーのためにバッファリングし、(このクライアントも含む)全員に送信します。

このクライアントは他のクライアントと同じように、サーバーからRPCを受信したときにRPCを実行します。 利点: サーバーのRPC送信順は、どのクライアントに対しても同じになります。

Function Documentation

void OnPhotonSerializeView ( PhotonStream  stream,
PhotonMessageInfo  info 
)

スクリプトがPhotonViewの同期データを読み書きできるように、PUNによって1秒間に数回呼び出されます。

このメソッドは、PhotonViewのObservedコンポーネントとして割り当てられているスクリプトで呼び出されます。
PhotonNetwork.SerializationRateは、このメソッドが呼び出される頻度に影響します。
PhotonNetwork.SendRateは、このクライアントによってパッケージが送信される頻度に影響します。

このメソッドを実装すると、PhotonViewがどのデータを定期的に同期するかをカスタマイズできます。 あなたのコードは何が送られているか(内容)とあなたのデータが受信クライアントによってどのように使われるかを定義します。

他のコールバックとは異なり、OnPhotonSerializeViewは、PhotonView.observedスクリプトとして PhotonViewに割り当てられている場合にのみ呼び出されます。

このメソッドを利用するには、PhotonStreamが不可欠です。 PhotonView(PhotonStream.IsWriting == true)を制御するクライアントでは「書き込み」モードになり、制御クライアントが送信したものを受信するだけの リモートクライアントでは「読み取りモード」になります。

ストリームへの値の書き込みをスキップすると、PUNは更新をスキップします。 慎重に使用すれば帯域幅とメッセージを節約できます(ルーム/秒ごとに制限があります)。

送信者が更新を送信しない場合、OnPhotonSerializeViewはリモートクライアントでは 呼び出されません。これは「1秒あたりのx回Update()」としては使用できません。

Implemented in PhotonAnimatorView, CullingHandler, PhotonTransformViewClassic, PhotonRigidbodyView, PhotonRigidbody2DView, PhotonTransformView, and SmoothSyncMovement.