根据您的游戏状态收到不同的回调。有三个状态可用。这些可以在网络管理器HUD中设置。
在运行期间,网络管理器HUD的控件也可以在网络管理器HUD组件的窗口中找到。单击运行时控件以访问这些。
此页面详细介绍了每种模式下收到的回调。要了解有关设置游戏状态的更多信息,请参阅使用网络管理器:游戏状态管理。
某些网络管理器回调需要您运行多个游戏实例(例如,两个独立实例,或者一个独立实例,另一个在编辑器中)。这些实例可以位于同一台计算机上或不同的计算机上,只要这些计算机通过本地网络连接即可。
主机回调
为了获得这些回调,你需要有两个游戏实例,一个以主机模式运行,另一个以客户机模式运行。这些回调仅在以主机模式运行的实例上调用。
按照以下步骤获取回调。要停止实例,请按停止或使用API函数StopHost()
。
第1步:启动主机实例
• (Start()函数被调用)
• OnStartHost
• OnStartServer
• OnServerConnect
• OnStartClient
• OnClientConnect
• OnServerSceneChanged
• OnServerReady
• OnServerAddPlayer
第2步:启动客户端实例
• OnServerConnect
• OnServerReady
• OnServerAddPlayer
第3步:停止客户端实例
• OnServerDisconnect
第4步:停止主机实例
• OnStopHost
• OnStopServer
• OnStopClient
首先启动服务器模式实例,然后按照以下步骤获取回调。要停止实例,请按停止或使用API函数。
第1步:启动客户端实例
• (Start()函数被调用)
• OnStartClient
• OnClientConnect
• OnClientSceneChanged
第2步:停止服务器实例
服务器回调
为了获得这些回调,你需要有两个游戏实例,一个运行在服务器模式下,另一个运行在客户端模式下。这些回调仅在运行于服务器模式的实例上调用。
按照以下步骤获取回调。要停止实例,请按停止或使用API函数StopHost()
。
第1步:启动服务器实例
• (Start()函数被调用)
• OnStartServer
• OnServerSceneChanged
第2步:启动客户端实例
• OnServerConnect
• OnServerReady
第3步:停止客户端实例
• OnServerDisconnect
第4步:停止服务器实例
• OnStopServer
与主机服务器的Internet连接通过Unity MatchMaker
系统进行,该系统通过中继服务器连接您。
根据您的游戏状态收到不同的回调。MatchMaker
有两种状态:主机和客户端。要使用MatchMaker
,请运行游戏并从NetworkManagerHUD菜单中选择启用匹配器(M):
• 主持人:要在主持人模式下设置您的游戏,请选择启用匹配器(M) > 创建互联网匹配或使用API功能CreateMatch()
此页面详细介绍了每种模式下收到的回调。要了解有关设置游戏状态的更多信息,请参阅使用网络管理器:游戏状态管理。
某些网络管理器回调需要您运行多个游戏实例(例如,两个独立实例,或者一个独立实例,另一个在编辑器中)。这些实例可以位于同一台计算机上,也可以位于不同的计算机上,也可以位于同一网络或不同的网络上,但所有计算机都必须具有Internet连接。MatchMaker
允许您通过互联网连接游戏的实例,因此具有游戏实例的机器可能位于世界的不同地区。
主机MatchMaker回调
为了获得这些回调,你需要有两个游戏实例,一个以主机模式运行,另一个以客户机模式运行。这些回调仅在以主机模式运行的实例上调用。
按照以下步骤获取回调。要停止实例,请按停止或使用API函数StopHost()
。
第1步:启动主机实例
步骤2:启动客户端实例并选择加入Internet匹配或使用API函数JoinMatch()
• OnServerConnect
• OnServerReady
• OnServerAddPlayer
第3步:停止客户端实例
• OnServerDisconnect
要获得这些回调,需要运行两个游戏实例,一个在主机模式下,另一个在客户端模式下运行。这些回调仅在客户端模式下运行的实例上调用。
首先启动主机模式实例,然后启动客户端实例。按照以下步骤获取回调。要停止实例,请按停止或使用API函数StopHost()
。
步骤1:在客户端实例上,按查找网络匹配或使用API函数ListMatches()
查找在线游戏列表
• (Start()函数被调用)
• OnMatchList
步骤2:在客户端实例上,按Join Match或使用API函数JoinMatch()
加入在线游戏
• OnStartClient
• OnMatchJoined
• OnClientConnect
• OnClientSceneChanged
• OnStopClient
?