NetworkManager は、ネットワークを管理する HLAPI 向けの便利なクラスです。
シンプルなネットワークアプリケーションに関して、NetworkManager は、HLAPI を制御するために利用できます。これはシーンを管理するためにクライアントやサーバーを開始や停止をするための簡単な方法を提供します。さらに、ユーザーコードはネットワークイベント用にハンドラを実装するために使用することができる仮想関数を持っています。NetworkManager は、同時に1人のクライアントを処理します。下記の例では、最小限のネットワーク設定を示しています。
using UnityEngine; using UnityEngine.Networking;
public class Manager : NetworkManager { public override void OnServerConnect(NetworkConnection conn) { Debug.Log("OnPlayerConnected"); } }
networkSceneName | 現在のネットワークシーン名 |
singleton | NetworkManager のシングルトンオブジェクト |
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 | サーバーによってシーンの読み込みが初期化され、シーンの読み込みが完了したときにクライアント上で呼び出されます。 |
OnDestroyMatch | NetworkMatch.DestroyMatch のリクエストがサーバー上で処理されるときに発生するコールバック |
OnDropConnection | NetworkMatch.DropConnection のマッチリクエストがサーバー上で処理されるときに発生するコールバック |
OnMatchCreate | NetworkMatch.CreateMatch のリクエストがサーバー上で処理されるときに発生するコールバック |
OnMatchJoined | NetworkMatch.JoinMatch のリクエストがサーバー上で処理されるときに発生するコールバック |
OnMatchList | NetworkMatch.ListMatches のリクエストがサーバー上で処理されるときに発生するコールバック |
OnServerAddPlayer | ClientScene.AddPlayer によってクライアントで新しいプレイヤーが追加されたときにサーバー上で呼び出されます。 |
OnServerConnect | 新しいクライアントが接続に成功したときサーバー上で呼び出されます。 |
OnServerDisconnect | クライアントの接続が失われたか切断されたときにサーバー上で呼び出されます。 |
OnServerError | クライアント接続のネットワークエラーが発生したときサーバー上で呼び出されます。 |
OnServerReady | クラインアントの準備が整ったときサーバー上で呼び出されます。 |
OnServerRemovePlayer | クライアントがプレイヤーを削除するときサーバー上で呼び出されます。 |
OnServerSceneChanged | ServerChangeScene() のサーバーで読み込みが開始された場合、シーンが完全に読み込まれたときサーバー上で呼び出されます。 |
OnSetMatchAttributes | [[NetworkMatch.SetMatchAttributes] のリクエストがサーバー上で処理されるときに発生するコールバック |
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 | 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 | Destroys the object obj immediately. You are strongly recommended to use Destroy instead. |
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 is called once per physics update for every Collider other that is touching the trigger. |
OnTriggerStay2D | トリガー状態のオブジェクトのコライダーと別のオブジェクトのコライダー衝突している間、毎フレーム呼び出され続けます。(2D 物理挙動のみ) |
OnValidate | この関数はスクリプトがロードされた時やインスペクターの値が変更されたときに呼び出されます(この呼出はエディター上のみ) |
OnWillRenderObject | OnWillRenderObject はカメラからオブジェクトが可視状態の場合、各カメラごとに一回呼び出されます。 |
Reset | デフォルト値にリセットします |
Start | Start はスクリプトが有効で、Update メソッドが最初に呼び出される前のフレームで呼び出されます |
Update | Update は MonoBehaviour が有効の場合に、毎フレーム呼び出されます |