Monobit Unity Networking ver.2.8.0 Client API Reference
|
MonobitNetworkプラグインで使うためのメインクラスです More...
Static Public Member Functions | |
static void | MonobitNetworkInitialize () |
static bool | ConnectServer (string gameVersion, Hashtable customAuthData=null) |
Monobitサーバーに接続します。 More... | |
static GameObject | OnInstantiateWithResources (string prefabName) |
Resources.Load() を実行してプレハブを生成します。 More... | |
static GameObject | OnInstantiateWithAssetBundle (string assetBundlePath, string assetBundleName) |
AssetBundle.LoadAsset() を実行してプレハブを生成します。 More... | |
static void | SetInstantiateWithResourcesHandle (InstantiateWithResourcesHandle handle) |
InstantiateWithResources のイベントハンドルの設定. More... | |
static void | SetInstantiateWithAssetBundleHandle (InstantiateWithAssetBundleHandle handle) |
InstantiateWithAssetBundle のイベントハンドルの設定. More... | |
static bool | AddAuthParameters (string key, string value) |
カスタム認証パラメータの追加. More... | |
static bool | RemoveAuthParameters (string key) |
カスタム認証パラメータの削除. More... | |
static bool | ConnectServerBase (string gameVersion, Hashtable customAuthData=null) |
Monobitサーバーに接続します。 More... | |
static void | DisconnectServer () |
サーバからネットワークを切断する More... | |
static bool | SearchPlayers (string[] playerToSearch) |
指定したプレイヤー一覧に対し、ルーム入室状況とオンライン状況をリクエストします。 More... | |
static bool | CreateRoom (string roomName) |
ルームの作成 More... | |
static bool | CreateRoom (string roomName, RoomSettings roomSettings, LobbyInfo lobbyInfo) |
ルームの作成 More... | |
static bool | JoinRoom (string roomName) |
指定されたルーム名でルームに入室する More... | |
static bool | JoinOrCreateRoom (string roomName, RoomSettings roomSettings, LobbyInfo lobbyInfo) |
指定されたルーム名の部屋を検索し、入室します。 入室するルームが見つからなかった場合、指定された引数を元にルームを作成します。 More... | |
static bool | JoinRandomRoom () |
現存するロビー内にあるルームのいずれかに入室する More... | |
static bool | JoinRandomRoom (Hashtable expectedCustomRoomParameters, UInt32 expectedMaxPlayers) |
現存するロビー内にあるルーム内のうち、指定されたルームパラメータとルーム収容最大人数を設定しているいずれかのルームに入室する More... | |
static bool | JoinRandomRoom (Hashtable expectedCustomRoomParameters, UInt32 expectedMaxPlayers, MatchmakingMode matchingType, LobbyInfo lobbyInfo=null, string queryLobbyFilter=null) |
指定されたロビー内にあるルーム内のうち、指定されたルームパラメータとルーム収容最大人数、 ならびにクエリーフィルターと一致するルームについて、指定されたマッチングアルゴリズムを用いて検索し入室する More... | |
static bool | JoinLobby () |
デフォルトのロビーに入ります。 More... | |
static bool | JoinLobby (LobbyInfo lobbyInfo) |
サーバ上で任意のロビーを作成し、そのロビーに入室します。 More... | |
static bool | LeaveLobby () |
ロビーから退出します。 有効なルームリストについての更新について受信するのを停止します。 More... | |
static bool | LeaveRoom () |
現在のルームを退室して、ロビーに戻ります。 More... | |
static RoomData[] | GetRoomData () |
現在把握可能なルーム一覧情報をRoomData配列で取得します。 More... | |
static int | AssignViewID () |
現在使用している(またはローカルで使用している)プレイヤーに、 MonobitViewで使用される妥当なviewIDを割り当てます。 More... | |
static int | AssignSceneViewID () |
ホストにて、シーンオブジェクトにMonobitViewで使用される妥当なviewIDを出力します。 More... | |
static void | UnassignViewID (int viewID) |
手動でインスタンス作成されて破棄するネットワーク上のオブジェクトに対し、viewIDの割り当てを解除します。 More... | |
static GameObject | Instantiate (string prefabName, Vector3 position, Quaternion rotation, int group) |
インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します More... | |
static GameObject | Instantiate (InstantiateType loadType, string prefabName, Vector3 position, Quaternion rotation, int group) |
インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します More... | |
static GameObject | Instantiate (string prefabName, Vector3 position, Quaternion rotation, int group, object[] data, bool isDontDestroyOnLoad, bool isMine, bool isDontDestroyOnRoom) |
インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します More... | |
static GameObject | Instantiate (InstantiateType loadType, string prefabName, Vector3 position, Quaternion rotation, int group, object[] data, bool isDontDestroyOnLoad, bool isMine, bool isDontDestroyOnRoom) |
インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します More... | |
static bool | SendStream () |
他のクライアントに対し、即座にRPC送信やInstantiate()を呼び出させるのに使います。 More... | |
static bool | Kick (MonobitPlayer kickPlayer) |
クライアントに回線切断をリクエストします。 More... | |
static bool | ChangeHost (MonobitPlayer hostPlayer) |
サーバに依頼して、別のプレイヤーを現在のルームのホストに割り当ててもらいます。 More... | |
static void | Destroy (MonobitView targetView) |
指定されたMonobitViewが静的オブジェクトでないか、このクライアントが所有権を持っている場合、 GameObjectとそれに関連したMonobitViewをネットワーク上から破棄します。 More... | |
static void | Destroy (GameObject targetGo) |
指定されたMonobitViewが静的オブジェクトでないか、このクライアントが所有権を持っている場合、 GameObjectとそれに関連したMonobitViewをネットワーク上から破棄します。 More... | |
static void | DestroyPlayer (MonobitPlayer targetPlayer) |
指定したプレイヤーが所有しているGameObject、MonobitViewまたそれらの発したRPCをすべてネットワーク上から破棄します。 この関数をコールできるのは、ローカルプレイヤー(自身に向けて)、またはホスト(全クライアントに向けて)です。 More... | |
static void | DestroyPlayer (int targetPlayerId) |
指定したプレイヤーが所有しているGameObject、MonobitViewまたそれらの発したRPCをすべてネットワーク上から破棄します。 この関数をコールできるのは、ローカルプレイヤー(自身に向けて)、またはホスト(全クライアントに向けて)です。 More... | |
static void | DestroyAll () |
ルーム内の全てのGameObject、MonobitView、また、それらの発したRPCをすべてネットワーク上から破棄します。 サーバにバッファリングされたルーム情報のすべてを削除します。 More... | |
static void | RemoveRPCs (MonobitPlayer targetPlayer) |
指定されたプレイヤーによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。 More... | |
static void | RemoveRPCs (MonobitView targetMonobitView) |
指定されたプレイヤーによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。 More... | |
static void | RemoveRPCsInGroup (int targetGroup) |
指定されたグループIDによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。 More... | |
static void | CleanupMunHideInHierarchyObject () |
MUN内部で生成している、ネットワーク通信のために必要とされる隠しオブジェクトのクリーンアップを実行します. More... | |
static void | SetPlayerCustomParameters (Hashtable playerParameters) |
自身のプレイヤーパラメータを設定して、他のプレイヤーにも同期します。 More... | |
static void | SetReceivingEnabled (int group, bool enabled) |
指定されたグループに属するMonobitViewオブジェクトの受信の可否を決定する。 More... | |
static void | SetReceivingEnabled (int[] enableGroups, int[] disableGroups) |
指定されたグループに属するMonobitViewオブジェクトの受信の可否を決定する More... | |
static void | SetSendingEnabled (int group, bool enabled) |
指定されたグループに属するMonobitViewオブジェクトの送信の可否を決定する。 More... | |
static void | SetSendingEnabled (int[] enableGroups, int[] disableGroups) |
指定されたグループに属するMonobitViewオブジェクトの送信の可否を決定する。 More... | |
static void | SetLevelPrefix (short prefix) |
レベルプリフィックスの設定 これ以降インスタンス生成されるMonobitViewに設定されるレベルプリフィックス(monobitView.prefix)をセットします More... | |
static void | LoadLevel (object level) |
シーンのロード(object版) More... | |
Static Public Attributes | |
static readonly int | PERSONAL_VIEW_ID_MAX = 1000 |
MUNクライアント1単位当たりで使用できる、割り当て可能なViewIDの登録最大数. More... | |
static string | internalMUNVersion = "2.0" |
MUNのバージョン。MUNサーバ認証時に使用する. More... | |
static MonobitLogLevel | logLevel = MonobitLogLevel.ErrorsOnly |
ログ出力レベル. More... | |
static bool | UseRpcCache = false |
RPCキャッシュ機能を利用するかどうかのフラグ. More... | |
static int | maxConnections |
旧UnityNetworkingにおける、ルーム接続最大数の設定値。 旧UnityNetworkingの互換のために用意されているもので、MUNでは使用しない. More... | |
static List< Type > | SendMonoMessageTargetTypes = new List<Type>() { typeof(MonobitEngine.MonoBehaviour) } |
UnityでのSendMessageを送り付けるタイプ More... | |
static Type | SendMonoMessageTargetType = typeof(MonobitEngine.MonoBehaviour) |
この変数はObsoleteです。SendMonoMessageTargetTypes を利用してください。 More... | |
Properties | |
static bool | autoSyncScene [get, set] |
ルーム内の全クライアントが、ホストと同じゲームシーンをロードすべきかを決めます。 More... | |
static string | ActiveSceneName [get] |
現在動作しているシーンのファイル名を取得します。 More... | |
static int | ActiveSceneBuildIndex [get] |
現在動作しているシーンのインデックスを取得します。 More... | |
static string | gameVersion [get, set] |
クライアントのバージョン情報 More... | |
static MonobitLogLevel | LogLevel [get, set] |
ログ出力レベルの設定 More... | |
static string | ServerAddress [get] |
現在使用しているサーバのアドレス. More... | |
static Hashtable | CustomAuthParameters [get] |
カスタム認証パラメータの取得. More... | |
static string | CustomAuthResultRaw [get] |
カスタム認証結果の生データの取得. More... | |
static bool | isConnect [get] |
接続しているかの判定 More... | |
static bool | isConnecting [get] |
接続中かの判定 More... | |
static bool | isConnectReady [get] |
サーバー接続中&入退室ができる状態かの判定 More... | |
static ConnectionState | connectionState [get] |
クライアント側の接続状態判定 More... | |
static PeerState | connectionStateDetailed [get] |
接続状態の詳細を取得する More... | |
static bool | isInstantiateInRoom [get, set] |
trueの場合、Instantiate()関数をコールすると、入室中かどうかをチェックします。 ルームに入室中でなければ、Instantiate() は失敗します。 More... | |
static bool | isUsePrefabCache [get, set] |
true ならば、インスタンス生成時にMonobitNetwork.PrefabCacheを使い、GameObjectをメモリ内に保持します。 More... | |
static Dictionary< string, GameObject > | PrefabCache [get, set] |
GameObjectの参照を、参照回数の多いインスタンス作成のためにメモリ上に保持します。 More... | |
static Room | room [get] |
現在入室しているルームの情報 More... | |
static MonobitPlayer | player [get] |
ローカルユーザーのMonobitPlayer More... | |
static MonobitPlayer | host [get] |
現在入室しているルームのホストの情報 More... | |
static string | playerName [get, set] |
プレイヤーのニックネームです。入室したルーム内の全員に同期します。 More... | |
static MonobitPlayer[] | playerList [get] |
MonobitPlayerの一覧です。 More... | |
static MonobitPlayer[] | otherPlayersList [get] |
ローカルプレイヤーを含まない、他のクライアントのMonobitPlayerの一覧です。 More... | |
static List< SearchPlayerData > | SearchPlayerList [get, set] |
検索ユーザー一覧情報です。 More... | |
static int | SeaechPlayersElapsedTime [get] |
検索ユーザー一覧情報の古さ。 More... | |
static bool | offline [get, set] |
オフラインモードの設定です。 More... | |
static string | AssetBundlePath [get, set] |
AssetBundleのパス. More... | |
static int[] | AllowReceivingGroup [get] |
受信許可リスト. More... | |
static int[] | BlockSendingGroup [get] |
受信拒否リスト. More... | |
static bool | autoRemoveInLeftRoom [get, set] |
退室するプレイヤーにインスタンス生成されたGameObject/MonobitViewについて、ルーム内のプレイヤーが破棄すべきかどうかを決めます。 More... | |
static bool | autoJoinLobby [get, set] |
mun_masterサーバに接続した時、MonobitNetworkが「直前まで入室していたロビー」に再入室させるべきかを決めます。 直前まで入室していたロビーが存在しない場合、または初回接続の際には、デフォルトのロビーに参加させるべきかを決めます。 More... | |
static bool | EnableGetLobbyData [get, set] |
mun_masterサーバから有効なロビー一覧情報を取得可能にします。 More... | |
static List< LobbyData > | LobbyDataList [get] |
MonobitNetwork.EnableLobbyStatisticsがtrue のときに、mun_masterサーバから有効なロビーの情報を取得します。 More... | |
static bool | inLobby [get] |
このクライアントがロビーに入室していればtrueになります。 More... | |
static LobbyInfo | lobby [get, set] |
MUNがロビーに入るか、ルームを作成するときに使われるロビーの情報です。 More... | |
static int | sendRate [get, set] |
MonobitNetworkがパケットを1秒間に何回送信するかを決めます。 More... | |
static int | updateStreamRate [get, set] |
OnMonobitSerialize()による転送処理によって、MonobitViewが1秒間に何回送信処理を実行するかを決めます。 MonobitNetwork.sendRateと関連させて、この値を決めてください。 More... | |
static bool | isMessageQueueRunning [get, set] |
受信イベント(RPC受信、インスタンス作成、その他受信するすべて)の送信を一時停止するのに使われます。 More... | |
static bool | isHost [get] |
自身がホストであるかどうかのフラグ。 More... | |
static bool | isLeader [get] |
自身がリーダーであるかどうかのフラグ。 More... | |
static bool | inRoom [get] |
自身がルームに入室している場合、この値が true になります。 More... | |
static int | clientCountInApplication [get] |
同一ネットワーク上に存在する、認証クライアントの数を取得します。 More... | |
static int | clientCountInRoom [get] |
サーバに接続している同一認証クライアントのうち、ルームに接続しているユーザー数を取得します。 More... | |
static int | clientCountInLobby [get] |
サーバに接続している同一認証クライアントのうち、ロビーに接続しているユーザー数を取得します。 More... | |
static int | roomCountInLobby [get] |
現在使用されているルーム数を取得します。 More... | |
static IMunPrefabPool | ObjectPool [get, set] |
オブジェクトプールの情報。 More... | |
static InstantiateWithResourcesHandle | InstantiateWithResources [set] |
Resources.Load() によるプレハブ生成処理ルーチンの登録. More... | |
static InstantiateWithAssetBundleHandle | InstantiateWithAssetBundle [set] |
AssetBundle.LoadAsset() によるプレハブ生成処理ルーチンの登録. More... | |
MonobitNetworkプラグインで使うためのメインクラスです
|
staticinherited |
カスタム認証パラメータの追加.
key | カスタム認証パラメータのキー. |
value | カスタム認証パラメータの実値. |
|
staticinherited |
ホストにて、シーンオブジェクトにMonobitViewで使用される妥当なviewIDを出力します。
|
staticinherited |
現在使用している(またはローカルで使用している)プレイヤーに、 MonobitViewで使用される妥当なviewIDを割り当てます。
|
staticinherited |
サーバに依頼して、別のプレイヤーを現在のルームのホストに割り当ててもらいます。
hostPlayer | 次のホストになるプレイヤー。 |
ChangeHost() は、ルームに所属する全てのクライアントからリクエストを送信することが可能です。 運用の際にはみだりに変更できないよう、特定のクライアントのみこのメソッド実行可能にするなど、外側で条件分岐させることが望ましいと思われます。
|
staticinherited |
MUN内部で生成している、ネットワーク通信のために必要とされる隠しオブジェクトのクリーンアップを実行します.
CleanupMunHideInHierarchyObject() はUnityエディタ専用関数です。Unityアプリケーション実行中にコールしても、何もしません。
Unity エディタ上のメニューから、「Window > Monobit Unity Networking > Cleanup MUN Internal HideInHierarchy object」を選択することで、 シーン内に不用意に生成された「MUNの秘匿オブジェクト」についいてピンポイントで抹消します。
「MUNの秘匿オブジェクト」はシーン内に多重生成されると、ネットワーク通信機能として正常に機能しません。 もしMUNサーバへの接続が行えない状況に陥った場合、MUNを利用する全てのシーンを1つずつ開いて、このメニューを選択し、シーンを上書き保存してください。
|
static |
Monobitサーバーに接続します。
gameVersion | クライアントのバージョン番号 |
ユーザーはゲームバージョンで個々に分断される
|
staticinherited |
Monobitサーバーに接続します。
gameVersion | クライアントのバージョン番号 |
ユーザーはゲームバージョンで個々に分断される
|
staticinherited |
ルームの作成
roomName | 参加するルーム名 |
|
staticinherited |
ルームの作成
roomName | 参加するルーム名 |
roomSettings | ルームパラメータの設定 |
lobbyInfo | ルームを作成するロビー情報 |
|
staticinherited |
指定されたMonobitViewが静的オブジェクトでないか、このクライアントが所有権を持っている場合、 GameObjectとそれに関連したMonobitViewをネットワーク上から破棄します。
targetView | 破棄対象となるGameObjectが所有しているMonobitViewオブジェクト。 |
一般的にルームを退室すると、GameObjectは自動的に破棄されます。 ルーム内にいない時にGameObjectを破棄した場合、そのDestroy処理はローカルだけでしか実行されません。 ネットワーク上のオブジェクト破棄が実行できるのは、それがMonobitNetwork.Instantiate()関数およびMonobitNetwork.InstantiateSceneObject()関数を使って作られたオブジェクトのみです。 シーンと共に読み込まれたその他のオブジェクトは、MonobitViewコンポーネントを持つ/持たないに関わらず無視されます。
|
staticinherited |
指定されたMonobitViewが静的オブジェクトでないか、このクライアントが所有権を持っている場合、 GameObjectとそれに関連したMonobitViewをネットワーク上から破棄します。
targetGo | 破棄対象となるGameObject。 |
一般的にルームを退室すると、GameObjectは自動的に破棄されます。 ルーム内にいない時にGameObjectを破棄した場合、そのDestroy処理はローカルだけでしか実行されません。 ネットワーク上のオブジェクト破棄が実行できるのは、それがMonobitNetwork.Instantiate()関数およびMonobitNetwork.InstantiateSceneObject()関数を使って作られたオブジェクトのみです。 シーンと共に読み込まれたその他のオブジェクトは、MonobitViewコンポーネントを持つ/持たないに関わらず無視されます。
|
staticinherited |
ルーム内の全てのGameObject、MonobitView、また、それらの発したRPCをすべてネットワーク上から破棄します。 サーバにバッファリングされたルーム情報のすべてを削除します。
ネットワーク上のオブジェクト破棄が実行できるのは、それがMonobitNetwork.Instantiate()関数およびMonobitNetwork.InstantiateSceneObject()関数を使って作られたオブジェクトのみです。 シーンと共に読み込まれたその他のオブジェクトは、MonobitViewコンポーネントを持つ/持たないに関わらず無視されます。
|
staticinherited |
指定したプレイヤーが所有しているGameObject、MonobitViewまたそれらの発したRPCをすべてネットワーク上から破棄します。 この関数をコールできるのは、ローカルプレイヤー(自身に向けて)、またはホスト(全クライアントに向けて)です。
targetPlayer | 破棄対象となるターゲットプレイヤー。 |
ネットワーク上のオブジェクト破棄が実行できるのは、それがMonobitNetwork.Instantiate()関数およびMonobitNetwork.InstantiateSceneObject()関数を使って作られたオブジェクトのみです。 シーンと共に読み込まれたその他のオブジェクトは、MonobitViewコンポーネントを持つ/持たないに関わらず無視されます。
|
staticinherited |
指定したプレイヤーが所有しているGameObject、MonobitViewまたそれらの発したRPCをすべてネットワーク上から破棄します。 この関数をコールできるのは、ローカルプレイヤー(自身に向けて)、またはホスト(全クライアントに向けて)です。
targetPlayerId | 破棄対象となるターゲットプレイヤーのID。 |
ネットワーク上のオブジェクト破棄が実行できるのは、それがMonobitNetwork.Instantiate()関数およびMonobitNetwork.InstantiateSceneObject()関数を使って作られたオブジェクトのみです。 シーンと共に読み込まれたその他のオブジェクトは、MonobitViewコンポーネントを持つ/持たないに関わらず無視されます。
|
staticinherited |
サーバからネットワークを切断する
一度回線切断すると、クライアントはサーバに再接続可能となります。 (再接続にはMonobitNetwork.ConnectServer() 関数などを使用してください。)
|
staticinherited |
現在把握可能なルーム一覧情報をRoomData配列で取得します。
ロビーにいるときに利用できます。
|
staticinherited |
インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します
prefabName | インスタンスを生成するプレハブ名 |
position | インスタンス生成時に適用する、Vector3 で表される位置情報 |
rotation | インスタンス生成時に適用する、Quaternionで表される回転情報 |
group | このMonobitViewのグループ |
|
staticinherited |
インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します
loadType | インスタンスを生成時のプレハブロード方法 |
prefabName | インスタンスを生成するプレハブ名 |
position | インスタンス生成時に適用する、Vector3 で表される位置情報 |
rotation | インスタンス生成時に適用する、Quaternionで表される回転情報 |
group | このMonobitViewのグループ |
|
staticinherited |
インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します
prefabName | インスタンスを生成するプレハブ名 |
position | インスタンス生成時に適用する、Vector3 で表される位置情報 |
rotation | インスタンス生成時に適用する、Quaternionで表される回転情報 |
group | このMonobitViewのグループ |
data | 付随するインスタンス作成のデータ |
isDontDestroyOnLoad | 生成したインスタンスをDontDestroyOnLoadにするかどうか |
isMine | 生成したインスタンスの所有者を自分にするかどうか |
isDontDestroyOnRoom | 所有者のルーム退室時に生成したインスタンスを削除せずに残しておくかどうか |
Instantiate() の data は、Instantiate() の際に同時に送られる任意の配列データです。 このデータは OnMonobitInstantiate() のコールバックメソッドが実行された段階で、引数となる MonobitMessageInfo 型のパラメータ info を利用して、 info.monobitView.instantiationData として取得できます。 また、任意の段階で、MonobitView オブジェクトを利用して、monobitView.instatiationData でも取得可能です。
|
staticinherited |
インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します
loadType | インスタンスを生成時のプレハブロード方法 |
prefabName | インスタンスを生成するプレハブ名 |
position | インスタンス生成時に適用する、Vector3 で表される位置情報 |
rotation | インスタンス生成時に適用する、Quaternionで表される回転情報 |
group | このMonobitViewのグループ |
data | 付随するインスタンス作成のデータ |
isDontDestroyOnLoad | 生成したインスタンスをDontDestroyOnLoadにするかどうか |
isMine | 生成したインスタンスの所有者を自分にするかどうか |
isDontDestroyOnRoom | 所有者のルーム退室時に生成したインスタンスを削除せずに残しておくかどうか |
Instantiate() の data は、Instantiate() の際に同時に送られる任意の配列データです。 このデータは OnMonobitInstantiate() のコールバックメソッドが実行された段階で、引数となる MonobitMessageInfo 型のパラメータ info を利用して、 info.monobitView.instantiationData として取得できます。 また、任意の段階で、MonobitView オブジェクトを利用して、monobitView.instatiationData でも取得可能です。
|
staticinherited |
デフォルトのロビーに入ります。
そのロビーではMonobitNetwork.GetRoomData()を使い、現在使用中のルーム一覧を見ることができます。
|
staticinherited |
サーバ上で任意のロビーを作成し、そのロビーに入室します。
lobbyInfo | ロビーの名前とタイプの情報。 |
MonobitNetwork.GetRoomData()を使ってアクセスできるルーム一覧は(クエリーロビーでない限り)サーバから送信されて更新されます。
|
staticinherited |
指定されたルーム名の部屋を検索し、入室します。 入室するルームが見つからなかった場合、指定された引数を元にルームを作成します。
roomName | 新規に作成する(または入室する)ルーム名 |
roomSettings | roomNameと一致する部屋が存在しなかった場合の、ルームパラメータの設定 |
lobbyInfo | roomNameと一致する部屋が存在しなかった場合の、ルームを作成するロビー情報 |
JoinOrCreateRoom() では、lobbyInfo に指定したロビー情報が有効である場合、そのロビーに所属するルームに対してのみ作成・入室が可能です。 lobbyInfo に null が指定されている場合、デフォルトロビーに所属するルームに対してのみ作成・入室が可能です。
|
staticinherited |
現存するロビー内にあるルームのいずれかに入室する
この JoinRandomRoom() では、デフォルトロビーに所属するルームに対してのみ入室可能です。
|
staticinherited |
現存するロビー内にあるルーム内のうち、指定されたルームパラメータとルーム収容最大人数を設定しているいずれかのルームに入室する
expectedCustomRoomParameters | ロビー通知を許可されたルームパラメータと一致するルームを検索するためのフィルター |
expectedMaxPlayers | このルーム収容最大人数と一致するルームを検索するためのフィルター |
この JoinRandomRoom() では、デフォルトロビーに所属するルームに対してのみ入室可能です。
|
staticinherited |
指定されたロビー内にあるルーム内のうち、指定されたルームパラメータとルーム収容最大人数、 ならびにクエリーフィルターと一致するルームについて、指定されたマッチングアルゴリズムを用いて検索し入室する
expectedCustomRoomParameters | ロビー通知を許可されたルームパラメータと一致するルームを検索するためのフィルター |
expectedMaxPlayers | このルーム収容最大人数と一致するルームを検索するためのフィルター |
matchingType | マッチメイキングルールのためのオプション |
lobbyInfo | 検索対象となるロビーの指定 |
queryLobbyFilter | クエリーロビーのための、WHEREフィルター文字列 |
この JoinRandomRoom() では、lobbyInfo に指定したロビー情報が有効である場合、そのロビーに所属するルームに対してのみ入室可能です。 lobbyInfo に null が指定されている場合、デフォルトロビーに所属するルームに対してのみ入室可能です。
|
staticinherited |
指定されたルーム名でルームに入室する
roomName | 参加するルーム名 |
JoinRoom() では、自身が入室しているロビーに属するルーム(MonobitNetwork.GetRoomData() で取得対象となるルーム)に対してのみ入室可能です。 自身がロビーに入室していない場合、デフォルトロビーに所属するルームに対してのみ入室可能です。
|
staticinherited |
クライアントに回線切断をリクエストします。
kickPlayer | 切断対象のプレイヤー。 |
|
staticinherited |
ロビーから退出します。 有効なルームリストについての更新について受信するのを停止します。
|
staticinherited |
現在のルームを退室して、ロビーに戻ります。
|
staticinherited |
シーンのロード(object版)
level | シーン名orID |
引数はstringかintで
|
static |
AssetBundle.LoadAsset() を実行してプレハブを生成します。
assetBundlePath | アセットバンドルのパス名 |
assetBundleName | アセットバンドル名 |
|
static |
Resources.Load() を実行してプレハブを生成します。
prefabName | プレハブ名 |
|
staticinherited |
カスタム認証パラメータの削除.
key | カスタム認証パラメータのキー. |
|
staticinherited |
指定されたプレイヤーによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。
targetPlayer | RPC破棄対象となるターゲットプレイヤー。 |
MonobitNetwork.RemoveRPCs() は、バッファリング(MonobitTargets.AllBuffered など)により送信されたRPC送信キュー情報を消し、後続入室者への送信を停止します。
|
staticinherited |
指定されたプレイヤーによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。
targetMonobitView | RPC破棄対象となるMonobitViewオブジェクト。 |
MonobitNetwork.RemoveRPCs() は、バッファリング(MonobitTargets.AllBuffered など)により送信されたRPC送信キュー情報を消し、後続入室者への送信を停止します。
|
staticinherited |
指定されたグループIDによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。
targetGroup | RPC破棄対象となるグループID。 |
MonobitNetwork.RemoveRPCsInGroup() は、バッファリング(MonobitTargets.AllBuffered など)により送信されたグループ別のRPC送信キュー情報を消し、後続入室者への送信を停止します。
|
staticinherited |
指定したプレイヤー一覧に対し、ルーム入室状況とオンライン状況をリクエストします。
playerToSearch | プレイヤー一覧の配列。 |
|
staticinherited |
他のクライアントに対し、即座にRPC送信やInstantiate()を呼び出させるのに使います。
|
staticinherited |
InstantiateWithAssetBundle のイベントハンドルの設定.
|
staticinherited |
InstantiateWithResources のイベントハンドルの設定.
|
staticinherited |
レベルプリフィックスの設定 これ以降インスタンス生成されるMonobitViewに設定されるレベルプリフィックス(monobitView.prefix)をセットします
prefix | レベルプリフィックスの値 |
prefixはshortの最大値(32767)
|
staticinherited |
自身のプレイヤーパラメータを設定して、他のプレイヤーにも同期します。
playerParameters | 自身のプレイヤーパラメータの情報 |
自身のプレイヤーパラメータは MonobitNetwork.player.customParameters に入っていますが、 これを直接編集しないでください!(必ず MonobitNetworkCore.SetPlayerCustomParameters() 関数を使ってください。)
|
staticinherited |
指定されたグループに属するMonobitViewオブジェクトの受信の可否を決定する。
enabled | 影響するグループID。 |
group | groupからの受信の可否を設定します。 ・可能にするなら true を設定します。 ・不可能にするなら false を設定します。 |
「グループID=0番」は、MUNの内部通信でも使用するチャンネルのため、常に受信許可を維持します。 SetReceivingEnabled() で無効化しようとしても反映されません。
|
staticinherited |
指定されたグループに属するMonobitViewオブジェクトの受信の可否を決定する
disableGroups | 受信可能にするグループID群。 nullを指定した場合には、全グループ受信不可となります。 |
enableGroups | 受信不可能にするグループID群。 nullを指定した場合には、全グループ受信可能となります。 |
「グループID=0番」は、MUNの内部通信でも使用するチャンネルのため、常に受信許可を維持します。 SetReceivingEnabled() で無効化しようとしても反映されません。
|
staticinherited |
指定されたグループに属するMonobitViewオブジェクトの送信の可否を決定する。
enabled | 影響するグループID。 |
group | groupからの送信の可否を設定します。 ・可能にするなら true を設定します。 ・不可能にするなら false を設定します。 |
「グループID=0番」は、MUNの内部通信でも使用するチャンネルのため、常に送信許可を維持します。 SetSendingEnabled() で無効化しようとしても反映されません。
|
staticinherited |
指定されたグループに属するMonobitViewオブジェクトの送信の可否を決定する。
disableGroups | 送信可能にするグループID群。 nullを指定した場合には、全グループ送信不可となります。 |
enableGroups | 送信不可能にするグループID群。 nullを指定した場合には、全グループ送信可能となります。 |
「グループID=0番」は、MUNの内部通信でも使用するチャンネルのため、常に送信許可を維持します。 SetSendingEnabled() で無効化しようとしても反映されません。
|
staticinherited |
手動でインスタンス作成されて破棄するネットワーク上のオブジェクトに対し、viewIDの割り当てを解除します。
viewID | AllocateViewID()または AllocateSceneViewID()で割り当てたviewID。 |
|
staticinherited |
MUNのバージョン。MUNサーバ認証時に使用する.
|
staticinherited |
ログ出力レベル.
|
staticinherited |
旧UnityNetworkingにおける、ルーム接続最大数の設定値。 旧UnityNetworkingの互換のために用意されているもので、MUNでは使用しない.
|
staticinherited |
MUNクライアント1単位当たりで使用できる、割り当て可能なViewIDの登録最大数.
|
staticinherited |
この変数はObsoleteです。SendMonoMessageTargetTypes を利用してください。
|
staticinherited |
UnityでのSendMessageを送り付けるタイプ
複数を指定できるように変更しています。
|
staticinherited |
RPCキャッシュ機能を利用するかどうかのフラグ.
|
staticget |
現在動作しているシーンのインデックスを取得します。
|
staticget |
現在動作しているシーンのファイル名を取得します。
|
staticgetinherited |
受信許可リスト.
|
staticgetsetinherited |
AssetBundleのパス.
|
staticgetsetinherited |
mun_masterサーバに接続した時、MonobitNetworkが「直前まで入室していたロビー」に再入室させるべきかを決めます。 直前まで入室していたロビーが存在しない場合、または初回接続の際には、デフォルトのロビーに参加させるべきかを決めます。
ロビーに入室していない状態ではルーム一覧は MonobitNetwork.GetRoomData()などでは取得できません。 ロビーに入室していなくとも、ルームの作成&ランダム入室は可能です。
|
staticgetsetinherited |
退室するプレイヤーにインスタンス生成されたGameObject/MonobitViewについて、ルーム内のプレイヤーが破棄すべきかどうかを決めます。
true の場合、RPCと退室するプレイヤーがインスタンス作成したGameObjectとMonobitViewを、サーバはクリーンアップして、 入室してくるプレイヤーがそれらを受け取らないようにします。
|
staticgetset |
ルーム内の全クライアントが、ホストと同じゲームシーンをロードすべきかを決めます。
読み込むゲームシーンを同期するためには、ホストはMonobitNetwork.LoadLevelを使っている必要があります。 そうであれば、全てのクライアントは、更新や入室の際に新しいシーンを読み込むことになります。
|
staticgetinherited |
受信拒否リスト.
|
staticgetinherited |
同一ネットワーク上に存在する、認証クライアントの数を取得します。
|
staticgetinherited |
サーバに接続している同一認証クライアントのうち、ロビーに接続しているユーザー数を取得します。
|
staticgetinherited |
サーバに接続している同一認証クライアントのうち、ルームに接続しているユーザー数を取得します。
|
staticgetinherited |
クライアント側の接続状態判定
|
staticgetinherited |
接続状態の詳細を取得する
オフラインモードはPeerState.Joinedを返します。 offlineModeRoomがNULLの時点ではPeerState.ConnectedToMasterを返します。
|
staticgetinherited |
カスタム認証パラメータの取得.
|
staticgetinherited |
カスタム認証結果の生データの取得.
|
staticgetsetinherited |
mun_masterサーバから有効なロビー一覧情報を取得可能にします。
|
staticgetsetinherited |
クライアントのバージョン情報
|
staticgetinherited |
現在入室しているルームのホストの情報
|
staticgetinherited |
このクライアントがロビーに入室していればtrueになります。
ルームに入室したとき、ロビーからは自動的に退出します。
|
staticgetinherited |
自身がルームに入室している場合、この値が true になります。
多くのアクション(インスタンス作成や退室など)はルーム内だけで実行できます。 オフラインモードでもルームに入室できます。
|
staticsetprotectedinherited |
AssetBundle.LoadAsset() によるプレハブ生成処理ルーチンの登録.
|
staticsetprotectedinherited |
Resources.Load() によるプレハブ生成処理ルーチンの登録.
|
staticgetinherited |
接続しているかの判定
|
staticgetinherited |
接続中かの判定
|
staticgetinherited |
サーバー接続中&入退室ができる状態かの判定
|
staticgetinherited |
自身がホストであるかどうかのフラグ。
|
staticgetsetinherited |
trueの場合、Instantiate()関数をコールすると、入室中かどうかをチェックします。 ルームに入室中でなければ、Instantiate() は失敗します。
|
staticgetinherited |
自身がリーダーであるかどうかのフラグ。
|
staticgetsetinherited |
受信イベント(RPC受信、インスタンス作成、その他受信するすべて)の送信を一時停止するのに使われます。
|
staticgetsetinherited |
true ならば、インスタンス生成時にMonobitNetwork.PrefabCacheを使い、GameObjectをメモリ内に保持します。
|
staticgetsetinherited |
MUNがロビーに入るか、ルームを作成するときに使われるロビーの情報です。
クライアントがロビーにいるか知るためにはMonobitNetwork.inLobbyをチェックしてください。
|
staticgetinherited |
MonobitNetwork.EnableLobbyStatisticsがtrue のときに、mun_masterサーバから有効なロビーの情報を取得します。
|
staticgetsetinherited |
ログ出力レベルの設定
|
staticgetsetinherited |
オブジェクトプールの情報。
オブジェクトプールは、一度インスタンス化したオブジェクトのインスタンスを保持し、それを再利用して使用します。
MonobitEngine.IMunPrefabPool にインタフェースに定義されている Instantiate(), Destroy() を実装することにより、 MUN 内部で実行するオブジェクトの動的生成および削除の機能をカスタマイズすることが可能です。
ただし、カスタマイズされた機能は同一のルームに所属する全てのクライアントで「同じタイミングで」登録する必要がありますので、 値代入は「ルーム入室以外」であることが望ましいです(ルーム入室中に実装することは可能ですが、カスタマイズの難度が飛躍的に上がります)。
また、ルーム入室外で ObjectPool を代入する場合にも、同期オブジェクトとして生成されるprefabには MonobitView がアタッチされており、 プール生成と同時に「プレイヤー所有権を与えられないシーン静的オブジェクトのMonobitView.viewID」が与えられることになりますので、 そのままの状態ではプレイヤー個別の同期オブジェクトとして利用できませんのでご注意ください。
以下は、その点を意識した上での ObjectPool に代入可能なクラスの一例です。
using UnityEngine;using MonobitEngine;using System.Collections.Generic;namespace TestMunFeature{{private static int maxCount = プールするオブジェクト数;private static string prefabName = プレハブ名;private static List<GameObject> poolList = new List<GameObject>();// コンストラクタpublic PrefabPool(){// 非アクティブのプレハブを生成するfor (int i = 0; i < maxCount; i++){obj = GameObject.Instantiate(MonobitNetwork.OnInstantiateWithResources(prefabName), Vector3.zero, Quaternion.identity) as GameObject;if (obj != null){GameObject.DontDestroyOnLoad(obj);obj.active = false;poolList.Add(obj);}else{Debug.LogError(prefabName);}}}// オブジェクト動的生成のカスタマイズ{// インスタンスをアクティブにして、transform を設定GameObject go = null;foreach (GameObject obj in poolList){if (obj.active == false){go = obj;go.active = true;break;}}if (go != null){go.transform.position = position;go.transform.rotation = rotation;}return go;}// オブジェクト動的破棄のカスタマイズ{MonobitView view = obj.GetComponent<MonobitView>();if (view != null && view.isMine){// 自身のオブジェクトであれば非アクティブ化obj.active = false;}else{// 他クライアントからのオブジェクトであれば破棄GameObject.Destroy(obj);}}// 明示的なデストラクタ{foreach (GameObject obj in poolList){MonobitNetwork.Destroy(obj);GameObject.Destroy(obj);}poolList.Clear();}}}
|
staticgetsetinherited |
オフラインモードの設定です。
|
staticgetinherited |
ローカルプレイヤーを含まない、他のクライアントのMonobitPlayerの一覧です。
|
staticgetinherited |
ローカルユーザーのMonobitPlayer
|
staticgetinherited |
MonobitPlayerの一覧です。
|
staticgetsetinherited |
プレイヤーのニックネームです。入室したルーム内の全員に同期します。
playerName はただのニックネームで、ユニーク名である必要はなく、アカウントと共にバックアップする必要もありません。 この値はいつ設定しても(例えば接続前でも)、プレイしているどのユーザーに対しても有効です。
|
staticgetsetinherited |
GameObjectの参照を、参照回数の多いインスタンス作成のためにメモリ上に保持します。
キャッシュはいつでも好きな時に編集可能です。 ただしInstantiate()を使っている時だけは例外的に編集不可です。
|
staticgetinherited |
現在入室しているルームの情報
|
staticgetinherited |
現在使用されているルーム数を取得します。
|
staticgetinherited |
検索ユーザー一覧情報の古さ。
|
staticgetsetinherited |
検索ユーザー一覧情報です。
オンライン状況と、入室しているルームの読み込み専用リストです。 MonobitNetwork.SearchPlayers() 関数がコールされるまでは null のままです。 また、このリストを編集しないでください。MonobitNetwork.SearchPlayers()関数によって内部的に扱われます。 MonobitNetwork.SeaechPlayersElapsedTime の値によって、データがどれだけ古いものかがミリ秒単位で分かります。
|
staticgetsetinherited |
MonobitNetworkがパケットを1秒間に何回送信するかを決めます。
|
staticgetinherited |
現在使用しているサーバのアドレス.
|
staticgetsetinherited |
OnMonobitSerialize()による転送処理によって、MonobitViewが1秒間に何回送信処理を実行するかを決めます。 MonobitNetwork.sendRateと関連させて、この値を決めてください。