UAC2015W121011SourceUAC2015W121011章节.pptxVIP

  • 2
  • 0
  • 约3.66千字
  • 约 17页
  • 2017-11-27 发布于广东
  • 举报
第10-11课 网络进阶进阶 —Master Server编程指南课程名称 Lesson Title网络进阶阶段—Master Server编程指南学习者等级 Learner Level 专业阶段模块 Module 网络进阶阶段本课时长 Duration 135分钟 学习者背景 Learner Background 本课程要求学习者对Unity网络知识有一定的认识,并对主服务器有初步 的了解。 教学目标 Objectives 本课的目标是让学生掌握什么是主服务器及其主要功能,并能够使学生掌握有效 的部署与托管Mater Server的方法。 ?了解主服务器的主要用途。 ?掌握主服务器的用法。 ?理解网络穿透的基本内容。主题 Topics Master Server 网络穿透 Master Server部署Master Server服务器 (Master Server) 是将游戏实例与想与之相连接的玩家客户端联系起来的会聚位置。它就像一个游戏大厅,可以主动扫描想要连接进来的客户端。它还可以隐藏端口号和 IP 地址以及执行其他在建立网络连接时出现的技术任务,例如防火墙处理和 NAT 穿透 (punchthrough)。变量描述1ipAddress所导入的网格中动画的默认循环模式 (Wrap Mode)。2Port动画按以下动画拆分选项的指定进行播放。3方法动画播放到结尾一次,然后停止。4RegisterHost动画一直播放,在到达结尾时重新开始。5PollHostList动画一直播放,然后反向从结尾播放到开头,依此类推。6RequestHostList动画一直播放,但是最后一个帧无限重复。这与“一次”(Once) 模式不同,因为播放在技术上不会在最后一个帧上停止(混合动画时十分有用)。7ClearHostList清空由MasterServer.PollHostList获取的主机列表。8UnregisterHost从主服务器上注销本地服务器。每次单独的游戏实例运行都需要向主服务器 (Master Server) 提供一个游戏类型 (Game Type)。当玩家连接主服务器 (Master Server) 并查询与其匹配的游戏类型 (Game Type) 时,服务器会回复一个正在运行的游戏的列表、每个游戏中的玩家人数以及游戏是否需要密码等信息。用于交换该数据的两个函数为: 用于服务器的 MasterServer.RegisterHost() ; 用于玩家客户端的 MasterServer.RequestHostList();RegisterHost (string gameTypeName , string gameName , string comment =“”);调用 RegisterHost 时,需要传递正在注册的主机的三个参数: gameTypeName(之前提到过的游戏类型 (Game Type))、gameName 和 comment。RequestHostList 将需要连接的主机的 gameTypeName 作为一个参数。所有已注册的该类型主机都将被返回到发出请求的客户端。这是一项异步操作,列表填满后,可通过调用 PollHostList() 检索完整的主机列表。游戏类型 (Game Type)?是标识性的名称,对每个游戏都应该是唯一的。最好选择一个其他人不太可能用到的、与众不同的名称。游戏名称仅仅是建立该游戏者提供的特定游戏实例的名称。如何注册一个游戏?主服务器 (Master Server) 的 NAT 穿透 (punchthrough) 职责实际上是由一个称为服务商 (Facilitator) 的单独过程负责的,但 Unity 的主服务器 (Master Server) 可并行地运行两种服务。注册一个游戏之前,请务必根据主机是否支持 NAT 功能来对其进行启用或禁用;可以使用 Network.InitializeServer 的 useNat 参数来执行此操作。代码实现:void OnGUI(){ if (GUI.Button (new Rect (10, 10, 100, 50), Start Server)) { bool useNat_T=!Network .HavePublicAddress (); Network.InitializeServer (30,26002,useNat_T ); MasterServer.RegisterHost (OnlyMyUniqueGameType, MeganDoesGame,Unity game for all); }}如何连接一个游戏?在主机注册或查询期间发送一个 HostData 对象。它包

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档