NetworkManager は、ネットワークを管理する HLAPI 向けの便利なクラスです。
シンプルなネットワークアプリケーションに関して、NetworkManager は、HLAPI を制御するために利用できます。これはシーンを管理するためにクライアントやサーバーを開始および停止するための簡単な方法を提供します。さらに、ユーザーコードはネットワークイベント用にハンドラを実装するために使用することができる仮想関数を持っています。NetworkManager は、同時に1人のクライアントを処理します。下記の例では、最小限のネットワーク設定を示しています。
#pragma strict public class Manager extends NetworkManager { public override function OnServerConnect(conn: NetworkConnection) { Debug.Log("OnPlayerConnected"); } }
using UnityEngine.Networking;
public class Manager : NetworkManager {
public override void OnServerConnect(NetworkConnection conn) { Debug.Log ("OnPlayerConnected"); } }
networkSceneName | 現在のネットワークシーン名 |
singleton | NetworkManager のシングルトンオブジェクト |
Networking.NetworkManager | デフォルトで用意されているネットワーク UI を表示するかどうかのフラグ |
autoCreatePlayer | 接続時に、またはシーンの変更時に自動でプレイヤーオブジェクトを作成するかどうかを制御するフラグ |
channels | ネットワークトランスポート層で使用する Quality-of-Service(QoS)チャンネル |
client | NetworkManager で使用されている現在の NetworkClient |
clientLoadedScene | クライアントがサーバーに接続するときに新しいシーンを読み込んだ場合は、true を返します。 |
connectionConfig | 使用するカスタムネットワーク設定 |
customConfig | カスタムネットワーク設定を有効にするフラグ |
dontDestroyOnLoad | シーンが変更するときに NetworkManager オブジェクトが破棄されるかどうかを制御するフラグ |
globalConfig | 使用するトランスポート層のグローバル設定 |
isNetworkActive | NetworkServer または NetworkClient がアクティブである場合、true です。 |
logLevel | ネットワークに関するログをユーザーに表示するためのログレベル |
matches | 参加できるマッチのリスト |
matchHost | マッチメイキングサーバーのホスト名 |
matchInfo | StartServer() または StartClient() が呼び出されたときに使用する MachInfo のインスタンス |
matchMaker | マッチメーカーの UMatch オブジェクト |
matchName | 現在のマッチ名 |
matchPort | マッチメイキングサーバーのポート |
matchSize | 現在のマッチの最大プレイヤー数 |
maxConnections | サポートする同時ネットワーク接続の最大数 |
maxDelay | 接続のパケットを送信する前にかける最大ディレイ |
migrationManager | NetworkManager で使用されるマイグレーションマネージャー |
networkAddress | 現在使用しているネットワークアドレス |
networkPort | 現在使用しているネットワークのポート |
numPlayers | サーバー上にあるすべてのコネクション間でアクティブなプレイヤーオブジェクトの数 |
offlineScene | オフライン時に切り替えるシーン |
onlineScene | オンライン時に切り替えるシーン |
packetLossPercentage | クライアントでパケットの入出力でドロップするパケットの割合 |
playerPrefab | サーバー上でプレイヤーオブジェクトを作成するときに使用されるデフォルトのプレハブ |
playerSpawnMethod | NetworkManager で使用される、プレイヤーを生成する方法 |
runInBackground | (アプリを最小化などして)バックグラウンドでアプリを起動し続けているときに、プログラムが実行するかどうか |
scriptCRCCheck | サーバーとクライアント間でスクリプトの CRC チェックを行うためのフラグ |
secureTunnelEndpoint | networkAddress と networkPort 設定の代わりに EndPoint オブジェクトを指定することができます(Xbox One のようなプラットフォームで必要です)。 |
serverBindAddress | サーバーにバインドされる IP アドレス |
serverBindToIP | 特定の IP アドレスにバインドされているかどうかをサーバーに伝えるためのフラグ |
simulatedLatency | クライアントのパケットの入力/出力するときのディレイ(ミリ秒) |
spawnPrefabs | オブジェクト生成システムに登録されているプレハブのリスト |
startPositions | 現在のシーンで、プレイヤーの開始位置として登録されているリスト |
useSimulator | この NetworkManager で起動したクライアントを、レイテンシとパケットロスをシミュレートするかどうかのフラグ |
useWebSockets | これにより、NetworkServer は通常のトランスポート層接続の代わりに、WebSockets 接続に備えて待機します。 |
GetStartPosition | これは、シーン内の NetworkStartPosition オブジェクトに基づいて生成位置を求めます。 |
IsClientConnected | NetworkManager がクライアントを持ち、サーバーと接続しているかチェックします。 |
OnClientConnect | サーバーに接続したときクライアント上で呼び出されます。 |
OnClientDisconnect | サーバーが切断されたときにクライアント上で呼び出されます。 |
OnClientError | ネットワークエラーが発生したときにクライアント上で呼び出されます。 |
OnClientNotReady | サーバーがまだ準備完了していないということを伝えるためにクライアント上で呼び出されます。 |
OnClientSceneChanged | サーバーによってシーンのロードが初期化され、シーンのロードが完了したときにクライアント上で呼び出されます。 |
OnMatchCreate | マッチを作成したときに呼び出されます。 |
OnMatchJoined | マッチに入室したときに実行されます。 |
OnMatchList | マッチの一覧を ListMatches() から取得した場合に実行されます。 |
OnServerAddPlayer | ClientScene.AddPlayer によってクライアントで新しいプレイヤーが追加されたときにサーバー上で呼び出されます。 |
OnServerConnect | 新しいクライアントが接続に成功したときサーバー上で呼び出されます。 |
OnServerDisconnect | クライアントの接続が失われたか切断されたときにサーバー上で呼び出されます。 |
OnServerError | クライアント接続のネットワークエラーが発生したときサーバー上で呼び出されます。 |
OnServerReady | クラインアントの準備が整ったときサーバー上で呼び出されます。 |
OnServerRemovePlayer | クライアントがプレイヤーを削除するときサーバー上で呼び出されます。 |
OnServerSceneChanged | ServerChangeScene() のサーバーでロードが開始された場合、シーンが完全にロードされたときサーバー上で呼び出されます。 |
OnStartClient | クライアントが起動したときに呼び出されるコールバックです。 |
OnStartHost | このコールバックは、ホストが起動されたときに実行されます。 |
OnStartServer | ホストが起動したのを含む、サーバーが起動したときに呼び出されるコールバックです。 |
OnStopClient | クライアントが停止したときに呼び出されるコールバックです。 |
OnStopHost | ホストが停止したときに呼び出されるコールバックです。 |
OnStopServer | ホストが停止したのを含む、サーバーが停止したときに呼び出されるコールバックです。 |
ServerChangeScene | networkSceneName を設定していれば、サーバー上でシーンの切り替えが行われます。 |
SetMatchHost | マッチメーカーのアドレスを設定します。 |
SetupMigrationManager | この NetworkManager と連携する NetworkMigrationManager オブジェクトを設定します。 |
StartClient | これは、ネットワーククライアントを起動します。すなわち、接続するためのアドレスとして networkAddress や networkPort のプロパティーを使用します。 |
StartHost | ネットワークに接続された機器「ホスト」(同じアプリケーションでクライアント/サーバー)を起動します。 |
StartMatchMaker | NetworkManager のマッチメーカーを起動します。 |
StartServer | 新しいサーバーを起動します。 |
StopClient | Manager を使用しているクライアントを停止します。 |
StopHost | これは、Manager を使用しているクライアントとサーバー両方を停止します。 |
StopMatchMaker | NetworkManager が使用しているマッチメーカーを停止します。 |
StopServer | Manager を使用しているサーバーを停止します。 |
UseExternalClient | StartClient() を利用する代わりに NetworkManager で外部用に作成されたクライアントオブジェクトを使用できるようになります。 |
RegisterStartPosition | プレイヤー生成位置としてゲームオブジェクトの Transform(遷移)を登録します。 |
Shutdown | NetworkManager を完全にシャットダウンして、シングルトンを破壊します。 |
UnRegisterStartPosition | プレイヤー生成位置としてゲームオブジェクトの Transform(遷移)を登録解除します。 |
enabled | 有効であれば更新され、無効であれば更新されません。 |
isActiveAndEnabled | Behaviour が有効かどうか |
gameObject | このコンポーネントはゲームオブジェクトにアタッチされます。コンポーネントはいつもゲームオブジェクトにアタッチされています。 |
tag | ゲームオブジェクトのタグ |
transform | GameObject にアタッチされた Transform (アタッチされていない場合は null) |
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 | 直ちにオブジェクトを破壊する (Destroy 関数の方を使うことを推奨します) |
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 | OnCollisionEnter はコライダー/Rigidbody が他のコライダー/Rigidbody に触れたときに呼び出されます |
OnCollisionEnter2D | このオブジェクトのコライダーに他のコライダーが接触したときに送信されます(2D Physics のみ) |
OnCollisionExit | OnCollisionExit はコライダー/Rigidbody と他のコライダー/Rigidbody の接触が終了したときに呼び出されます |
OnCollisionExit2D | このオブジェクトのコライダーと他のコライダーの接触が終わったときに送信されます(2D Physics のみ) |
OnCollisionStay | OnCollisionStay はコライダー/Rigidbody と他のコライダー/Rigidbody が接触し続けて毎フレームに一度呼び出されます |
OnCollisionStay2D | このオブジェクトのコライダーに他のコライダーが接触し続けている毎フレームの間、送信されます(2D Physics のみ) |
OnConnectedToServer | サーバーとの接続に成功したときにクライアント上で呼び出されます |
OnControllerColliderHit | OnControllerColliderHit は移動中にコントローラーがコライダーにヒットしたときに呼び出されます |
OnDestroy | この関数は MonoBehaviour が破棄されるときに呼び出されます |
OnDisable | この関数は Behaviour が無効/非アクティブになったときに呼び出されます |
OnDisconnectedFromServer | サーバーとの接続が失われたか切断されたときにクライアント上で呼び出されます |
OnDrawGizmos | 選択可能にしたり、常に描画したいギズモを描画するには OnDrawGizmos を使用します |
OnDrawGizmosSelected | 選択しているオブジェクトのみのギズモを描画したい場合は OnDrawGizmosSelected を使用します |
OnEnable | この関数はオブジェクトが有効/アクティブになったときに呼び出されます |
OnFailedToConnect | 接続試行がなんらかの理由で失敗したときにクライアント上で呼び出されます |
OnFailedToConnectToMasterServer | MasterServer への接続に問題がある場合に、クライアントまたはサーバーで呼び出されます |
OnGUI | OnGUI はレンダリングと GUI イベントのハンドリングのために呼び出されます |
OnJointBreak | ゲームオブジェクトのジョイントが壊れたときに呼び出されます |
OnJointBreak2D | ゲームオブジェクトにアタッチされた Joint2D が壊れたときに呼び出されます |
OnLevelWasLoaded | この関数は新しいレベルがロードされた後に呼び出されます |
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 はパーティクルがコライダーにヒットしたときに呼び出されます |
OnPlayerConnected | 新しいプレイヤーが接続に成功したときにサーバー上で呼び出されます |
OnPlayerDisconnected | プレイヤーがサーバーから接続が切断されるたびにサーバー上で呼び出されます |
OnPostRender | OnPostRender はカメラがシーンのレンダリングを完了した後に呼び出されます |
OnPreCull | OnPreCull はカメラがシーンをカリングする前に呼び出されます |
OnPreRender | OnPreRender はカメラがシーンのレンダリングを始める前に呼び出されます |
OnRenderImage | OnRenderImage はすべてのレンダリングが完了し RenterTexture にレンダリングされた後に呼び出されます |
OnRenderObject | OnRenderObject はカメラがシーンのレンダリングを行った後に呼び出されます |
OnSerializeNetworkView | ネットワークビューによって監視されるスクリプトの変数の同期をカスタマイズするために使用します |
OnServerInitialized | Network.InitializeServer が実行され完了したときにサーバー上で呼び出されます |
OnTransformChildrenChanged | この関数は GameObject の Transform のすべての子の中で変更があったときに呼び出されます |
OnTransformParentChanged | この関数は GameObject の Transform の parent プロパティーに変更があったときに呼び出されます |
OnTriggerEnter | OnTriggerEnter は Collider が他のトリガーに入ったときに呼び出されます |
OnTriggerEnter2D | トリガーコライダーをアタッチしたオブジェクトが他のオブジェクトに接触したときに送信されます(2D Physics のみ) |
OnTriggerExit | OnTriggerExit は Collider が他のトリガーから出たときに呼び出されます |
OnTriggerExit2D | トリガーコライダーをアタッチしたオブジェクトが他のオブジェクトと接触が終わったときに送信されます(2D Physics のみ) |
OnTriggerStay | OnTriggerStay は Collider が他のトリガーと当たり続けている毎フレーム呼び出されます |
OnTriggerStay2D | トリガーコライダーをアタッチしたオブジェクトが他のオブジェクトと接触し続けている時に毎フレーム送信されます(2D Physics のみ) |
OnValidate | この関数はスクリプトがロードされた時やインスペクターの値が変更されたときに呼び出されます(この呼出はエディター上のみ) |
OnWillRenderObject | OnWillRenderObject はオブジェクトが表示されている場合カメラごとに 1 度呼び出されます |
Reset | デフォルト値にリセットします |
Start | Start はスクリプトが有効で、Update メソッドが最初に呼び出される前のフレームで呼び出されます |
Update | Update は MonoBehaviour が有効の場合に、毎フレーム呼び出されます |