Unity のマルチプレイヤーマッチメイキングサービスと通信を行うためのコンポーネント
This class aggregates all the supported JSON calls into functions that are
callable for games that wish to interact with the MatchMaker service.
The example code below shows how to use NetworkMatch API.
using UnityEngine; using UnityEngine.Networking; using UnityEngine.Networking.Match; using System.Collections.Generic;
public class SimpleMatchMaker : MonoBehaviour { void Start() { NetworkManager.singleton.StartMatchMaker(); }
//call this method to request a match to be created on the server public void CreateInternetMatch(string matchName) { NetworkManager.singleton.matchMaker.CreateMatch(matchName, 4, true, "", "", "", 0, 0, OnInternetMatchCreate); }
//this method is called when your request for creating a match is returned private void OnInternetMatchCreate(bool success, string extendedInfo, MatchInfo matchInfo) { if (success) { //Debug.Log("Create match succeeded");
MatchInfo hostInfo = matchInfo; NetworkServer.Listen(hostInfo, 9000);
NetworkManager.singleton.StartHost(hostInfo); } else { Debug.LogError("Create match failed"); } }
//call this method to find a match through the matchmaker public void FindInternetMatch(string matchName) { NetworkManager.singleton.matchMaker.ListMatches(0, 10, matchName, true, 0, 0, OnInternetMatchList); }
//this method is called when a list of matches is returned private void OnInternetMatchList(bool success, string extendedInfo, List<MatchInfoSnapshot> matches) { if (success) { if (matches.Count != 0) { //Debug.Log("A list of matches was returned");
//join the last server (just in case there are two...) NetworkManager.singleton.matchMaker.JoinMatch(matches[matches.Count - 1].networkId, "", "", "", 0, 0, OnJoinInternetMatch); } else { Debug.Log("No matches in requested room!"); } } else { Debug.LogError("Couldn't connect to match maker"); } }
//this method is called when your request to join a match is returned private void OnJoinInternetMatch(bool success, string extendedInfo, MatchInfo matchInfo) { if (success) { //Debug.Log("Able to join a match");
MatchInfo hostInfo = matchInfo; NetworkManager.singleton.StartClient(hostInfo); } else { Debug.LogError("Join match failed"); } } }
baseUri | NetworkMatch が通信するマッチメーカーの基本 URL |
CreateMatch | この関数は新しいマッチの作成に使用します。この関数を呼び出すクライアントがマッチのホストになります。 |
DestroyMatch | この関数は、接続しているメンバーにかまわず継続中のマッチを破棄するよう MatchMaker に指示します。 |
DropConnection | これにより、個々のクライアントがマッチを去ることができます。 |
JoinMatch | マッチメーカーに現在のクライアントが特定のマッチに加わりたいことを伝えるための関数。 |
ListMatches | マッチメーカーで現在行われているマッチを一覧にする関数です。 |
SetMatchAttributes | この関数によって呼び出し側が、継続中のマッチの属性を変更することができます。 |
BasicResponseDelegate | 基本的レスポンスの型 (一般的に成功/失敗と、もし、失敗だったときは追加の情報を表示) を返す MatchMaker レスポンスを処理するデリゲート。 |
DataResponseDelegate<T0> | 基本情報とデータメンバーを含むレスポンスデリゲート。これは、呼出し自体の成功/失敗とともに、データが渡される必要のある MatchMaker コールバックのサブセットで使用されます。 |
enabled | 有効であれば更新され、無効であれば更新されません。 |
isActiveAndEnabled | Behaviour が有効かどうか |
gameObject | このコンポーネントはゲームオブジェクトにアタッチされます。コンポーネントはいつもゲームオブジェクトにアタッチされています。 |
tag | ゲームオブジェクトのタグ |
transform | The Transform attached to this GameObject. |
runInEditMode | Allow a specific instance of a MonoBehaviour to run in edit mode (only available in the editor). |
useGUILayout | これを無効にすると、GUI のレイアウトフェーズをスキップすることができます |
hideFlags | オブジェクトは非表示、シーンに保存、ユーザーが編集可能、などを設定する。 |
name | オブジェクト名 |
BroadcastMessage | ゲームオブジェクトまたは子オブジェクトにあるすべての MonoBehaviour を継承したクラスにある methodName 名のメソッドを呼び出します。 |
CompareTag | このゲームオブジェクトは tag とタグ付けされているかどうか |
GetComponent | ゲームオブジェクトに type がアタッチされている場合は type のタイプを使用してコンポーネントを返します。ない場合は null です |
GetComponentInChildren | GameObject や深さ優先探索を活用して、親子関係にある子オブジェクトから type のタイプのコンポーネントを取得します。 |
GetComponentInParent | GameObject や深さ優先探索を活用して、親子関係にある親オブジェクトから type のタイプのコンポーネントを取得します。 |
GetComponents | GameObject から type のタイプのコンポーネントを「すべて」取得します。 |
GetComponentsInChildren | GameObject や深さ優先探索を活用して、親子関係にある子オブジェクトから type のタイプのコンポーネントを「すべて」取得します。 |
GetComponentsInParent | GameObject や深さ優先探索を活用して、親子関係にある親オブジェクトから type のタイプのコンポーネントを「すべて」取得します。 |
SendMessage | ゲームオブジェクトにアタッチされているすべての MonoBehaviour にある methodName と名付けたメソッドを呼び出します |
SendMessageUpwards | ゲームオブジェクトと親(の親、さらに親 ... )にアタッチされているすべての MonoBehaviour にある methodName と名付けたメソッドを呼び出します |
CancelInvoke | すべての Invoke をキャンセルします |
Invoke | 設定した時間(単位は秒)にメソッドを呼び出します |
InvokeRepeating | 設定した時間(単位は秒)にメソッドを呼び出し、repeatRate 秒ごとにリピートします |
IsInvoking | メソッドの呼出が保留中かどうか |
StartCoroutine | コルーチンを開始します |
StopAllCoroutines | Behaviour 上で実行されているコルーチンをすべて停止します |
StopCoroutine | この Behaviour 上で実行されている methodName という名のコルーチン、または routine として保持されているコルーチンをすべて停止します |
GetInstanceID | オブジェクトのインスタンス ID を返します |
ToString | ゲームオブジェクトの名前を返します |
Unity コンソールにログを出力します (Debug.Log と同じです) | |
Destroy | ゲームオブジェクトやコンポーネント、アセットを削除します |
DestroyImmediate | オブジェクト obj を破棄します。 |
DontDestroyOnLoad | 新しいシーンを読み込んでもオブジェクトが自動で破壊されないように設定します |
FindObjectOfType | タイプ type から最初に見つけたアクティブのオブジェクトを返します |
FindObjectsOfType | タイプから見つけたすべてのアクティブのオブジェクト配列を返します |
Instantiate | original のオブジェクトをクローンします |
bool | オブジェクトが存在するかどうか |
operator != | 二つのオブジェクトが異なるオブジェクトを参照しているか比較します |
operator == | 2つのオブジェクト参照が同じオブジェクトを参照しているか比較します。 |
Awake | スクリプトのインスタンスがロードされたときに呼び出されます |
FixedUpdate | MonoBehaviour が有効の場合、この関数は毎回、固定フレームレートで呼び出されます。 |
LateUpdate | Behaviour が有効の場合、LateUpdate は毎フレーム呼びだされます |
OnAnimatorIK | アニメーション IK (インバースキネマティクス)をセットアップするときのコールバック |
OnAnimatorMove | ルートモーションを修正するアニメーション動作を処理するコールバック |
OnApplicationFocus | プレイヤーがフォーカスを取得、または、失ったときに、すべてのゲームオブジェクトに送信されます。 |
OnApplicationPause | プレイヤーが一時停止したときにすべてのゲームオブジェクトに送信されます |
OnApplicationQuit | アプリケーションが終了する前にすべてのゲームオブジェクトで呼び出されます |
OnAudioFilterRead | OnAudioFilterRead が実装されている場合、Unity は DSP チェーンにカスタムフィルターを挿入します。 |
OnBecameInvisible | OnBecameInvisible はレンダラーがカメラから見えなくなったときに呼び出されます |
OnBecameVisible | OnBecameVisible はレンダラーが任意のカメラから見えるようになると呼び出されます |
OnCollisionEnter | この collider/rigidbody は他の collider/rigidbody に触れたときに OnCollisionEnter は呼び出されます。 |
OnCollisionEnter2D | オブジェクトのコライダーが別のコライダーに衝突したときに呼び出されます(2D 物理挙動のみ) |
OnCollisionExit | この collider/rigidbody が他の collider/rigidbody と触れ合うのをやめたときに OnCollisionExit は呼び出されます。 |
OnCollisionExit2D | オブジェクトのコライダーと別のオブジェクトコライダーが衝突から離れた瞬間に呼び出されます(2D 物理挙動のみ) |
OnCollisionStay | OnCollisionStay は rigidbody/collider が他の rigidbody/collider に触れている間毎フレーム 1 度だけ呼び出されます。 |
OnCollisionStay2D | オブジェクトのコライダーと別のオブジェクトのコライダーが衝突している間、毎フレーム呼び出され続けます(2D 物理挙動のみ) |
OnConnectedToServer | サーバーとの接続に成功したときにクライアント上で呼び出されます |
OnControllerColliderHit | OnControllerColliderHit はキャラクターコントローラーが移動中にコライダーに衝突した際に、呼び出されます。 |
OnDestroy | この関数は MonoBehaviour が破棄されるときに呼び出されます |
OnDisable | この関数は Behaviour が無効/非アクティブになったときに呼び出されます |
OnDisconnectedFromServer | サーバーとの接続が失われたか切断されたときにクライアント上で呼び出されます |
OnDrawGizmos | 選択可能にしたり、常に描画したいギズモを描画するには OnDrawGizmos を使用します |
OnDrawGizmosSelected | オブジェクトが選択されている場合は、ギズモを描画するために OnDrawGizmosSelected を実装します。 |
OnEnable | この関数はオブジェクトが有効/アクティブになったときに呼び出されます |
OnFailedToConnect | 接続試行がなんらかの理由で失敗したときにクライアント上で呼び出されます |
OnFailedToConnectToMasterServer | MasterServer への接続に問題がある場合に、クライアントまたはサーバーで呼び出されます |
OnGUI | OnGUI はレンダリングと GUI イベントのハンドリングのために呼び出されます |
OnJointBreak | ゲームオブジェクトに対するジョイントが外れたとき呼び出されます |
OnJointBreak2D | ゲームオブジェクトにアタッチした Joint2D が壊れたときに呼び出されます。 |
OnMasterServerEvent | MasterServer からイベントを報告してくるときにクライアントやサーバー上で呼び出されます。 |
OnMouseDown | OnMouseDown は GUIElement または Collider 上でユーザーがマウスボタンをクリックしたときに呼び出されます |
OnMouseDrag | OnMouseDrag はユーザーが GUIElement または Collider をマウスでクリックし、ドラッグしている間呼び出されます。 |
OnMouseEnter | OnMouseEnter は GUIElement または Collider 上にマウスが乗ったときに呼び出されます |
OnMouseExit | OnMouseExit は GUIElement または Collider 上からマウス離れたときに呼び出されます |
OnMouseOver | OnMouseOver は GUIElement または Collider 上にマウスがあり続ける限り毎フレーム呼び出され続けます |
OnMouseUp | OnMouseUp はユーザーがマウスボタンを離したときに呼び出されます |
OnMouseUpAsButton | OnMouseUpAsButton はマウスを押した時と同じ GUIElement や Collider 上でマウスを離した時のみに呼び出されます。 |
OnNetworkInstantiate | Network.Instantiate でインスタンス化されたオブジェクトに対して呼び出されます |
OnParticleCollision | パーティクルがコライダーにヒットしたときに OnParticleCollision が呼び出されます |
OnParticleTrigger | OnParticleTrigger は、パーティクルシステムのパーティクルが Triggers モジュールの条件を満たすときに呼び出されます。 |
OnPlayerConnected | 新しいプレイヤーが接続に成功したときにサーバー上で呼び出されます |
OnPlayerDisconnected | プレイヤーがサーバーから接続が切断されるたびにサーバー上で呼び出されます |
OnPostRender | OnPostRender はカメラがシーンのレンダリングを完了した後に呼び出されます |
OnPreCull | OnPreCull はカメラがシーンのカリングを行う直前に呼び出されます。 |
OnPreRender | OnPreRender はカメラがシーンのレンダリングを開始する前に呼び出されます。 |
OnRenderImage | OnRenderImage はすべてのレンダリングが RenderImage へと完了したときに呼び出されます。 |
OnRenderObject | OnRenderObject はカメラがシーンをレンダリングした後に呼び出されます。 |
OnSerializeNetworkView | ネットワークビューによって監視されるスクリプトの変数の同期をカスタマイズするために使用します |
OnServerInitialized | Network.InitializeServer が実行され完了したときにサーバー上で呼び出されます |
OnTransformChildrenChanged | この関数は GameObject の Transform のすべての子の中で変更があったときに呼び出されます |
OnTransformParentChanged | この関数は GameObject の Transform の parent プロパティーに変更があったときに呼び出されます |
OnTriggerEnter | Collider が他のトリガーイベントに侵入したときに OnTriggerEnter が呼び出されます。 |
OnTriggerEnter2D | オブジェクトにアタッチしたトリガーの中に別のオブジェクトが入ったときに呼び出されます。(2D 物理挙動のみ) |
OnTriggerExit | Collider が other のトリガーに触れるのをやめたときに OnTriggerExit は呼び出されます。 |
OnTriggerExit2D | トリガー状態のオブジェクトのコライダーと別のオブジェクトのコライダーが衝突から離れた瞬間に、呼び出されます。(2D 物理挙動のみ) |
OnTriggerStay | OnTriggerStay は Collider が他のトリガーと当たり続けている毎フレーム呼び出されます |
OnTriggerStay2D | トリガー状態のオブジェクトのコライダーと別のオブジェクトのコライダー衝突している間、毎フレーム呼び出され続けます。(2D 物理挙動のみ) |
OnValidate | この関数はスクリプトがロードされた時やインスペクターの値が変更されたときに呼び出されます(この呼出はエディター上のみ) |
OnWillRenderObject | OnWillRenderObject はカメラからオブジェクトが可視状態の場合、各カメラごとに一回呼び出されます。 |
Reset | デフォルト値にリセットします |
Start | Start はスクリプトが有効で、Update メソッドが最初に呼び出される前のフレームで呼び出されます |
Update | Update は MonoBehaviour が有効の場合に、毎フレーム呼び出されます |