Version: 5.4
Method group is Obsolete
NetworkView RPC functions are deprecated. Refer to the new Multiplayer Networking system.

NetworkView.RPC

マニュアルに切り替える
public void RPC (string name, RPCMode mode, params object[] args);

説明

RPC 関数をすべてのピアに呼び出します。

呼び出された関数は @RPC タグの設定が必要です ([RPC] C# コード)。 RPC 関数が呼び出されるときに NetworkView は GameObject にアタッチされている必要がありますます。 NetworkView が何か他のためにか RPC 関数のためだけに使用されている場合、問題はありません。 RPC 関数だけの場合、状態の同期をオフにする必要があり、観測されたプロパティーは none に設定することができます。 異なるスクリプトでふたつの RPC 関数が同じ名前を持っていて、 RPC が呼び出されたときにそれらのひとつが呼び出される場合、 RPC 関数名はシーン全体でユニークである必要があります。 送信される場合、RPC 呼び出しは常に同じ順序で実行されることが保証されます。 NetworkView.group でネットワークビューの通信グループ設定を RPC 呼び出しのために使用します。 RPC 自身の情報を取得するには自動的に情報が格納される関数の宣言に NetworkMessageInfo パラメーターを追加できます。 これを行うと RPC 関数を呼び出す方法を変更する必要がありません。 詳細は manual の RPC の章を参照してください。 有効な RPC パラメーターは int、 float 、 string 、 NetworkPlayerNetworkViewIDVector3Quaternion です。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public Transform cubePrefab; public NetworkView nView; void Start() { nView = GetComponent<NetworkView>(); } void OnGUI() { if (GUILayout.Button("SpawnBox")) { NetworkViewID viewID = Network.AllocateViewID(); nView.RPC("SpawnBox", RPCMode.AllBuffered, viewID, transform.position); } } [RPC] void SpawnBox(NetworkViewID viewID, Vector3 location) { Transform clone; clone = Instantiate(cubePrefab, location, Quaternion.identity) as Transform as Transform; NetworkView nView; nView = clone.GetComponent<NetworkView>(); nView.viewID = viewID; } }

public void RPC (string name, NetworkPlayer target, params object[] args);

説明

特定のプレイヤーに RPC 関数を呼び出します。