Unity3D技术之多玩家联网游戏创建说明
多玩家联网游戏
实时网络是一个复杂的领域,但Unity使为游戏添加网络功能变得简单。不过,在游戏中使用实时网络之前,了解网络范围是非常有必要的。这部分将介绍网络基础以及Unity在网络方面的执行细节。如果您之前从未创建过网络游戏,强烈建议您在开始之前详细阅读本指南。
高级概览
此部分将对网络中涉及的所有概念进行概述,并介绍更深入的主题。
Unity中的网络元素
该部分会涵盖Unity对前面概述中所解释概念的具体实施方式。
RPC细节
远程过程调用(Remote Procedure Call,简称RPC)是在远程机器上调用函数的一种方式。它既可以是客户端调用服务器上的函数,也可以是服务器调用部分或所有客户端上的函数。本部分将详细讲解RPC的概念。
状态同步
状态同步(State Synchronization)是一种在两个或更多个于网络上运行的游戏实例中,定期更新一系列特定数据的方法。
尽量减少带宽
您在分享数据位置和方法方面所做的每一个选择,都会影响游戏所使用的网络带宽。本页面将讲解如何使用带宽以及尽量减少其使用率的方法。
网络视图
网络视图(Network Views)是用于在网络中分享数据的组件(Components),是Unity网络的基本组成部分。本页面将对其进行详细讲解。
网络实例化
网络中的一个复杂问题是对象的所有权以及决定由谁控制什么。正如本部分所讲解的,网络实例化(Network Instantiation)将为您处理这一任务。对于需要更好地控制对象所有权的情况,本部分还会涵盖一些更复杂的替代方案。
主服务器
主服务器(Master Server)就像一个游戏大厅,服务器可以在此向客户端宣告它们的存在。它还使用一种称为NAT穿透能力(在服务商的帮助下)的技术,从防火墙或家庭网络后面启用通信,以确保玩家始终能够相互连接。本页面将讲解如何使用主服务器(Master Server)。