Unity网络多玩家游戏开发教程(上册)
(内部资料)
大学霸
www.daxueba
前言
多玩家通过联网的方式共同进行的游戏被称为网络游戏。网络游戏由于具备更强的娱乐性和对战性成为游戏的主流。在这个互联互通的时代,多人联网玩同一个游戏,已经成为大众的习惯。Unity作为强大的游戏开发平台,为网络游戏的的开发提供大量的组件和API。同时,也涌现了大量的第三方的插件。
网络游戏涉及网络构建、通信方式、数据带宽、数据逻辑同步等多方面问题。本教程针对这些热点问题,重点讲解Unity游戏开发中的常见技术、插件等。内容包括:
❑Unity自带网络组件Network View(上册)
❑第三方组件网络功能插件PUN(上册)
❑Yahoo专向技术Play.IO(上册)
❑第三方SDK PubNub(下册)
❑实体差值和预测(下册)
❑击中检测(下册)
1.学习所需的系统和软件
❑安装Windows 7操作系统
❑安装Unity 4.x
2.学习建议
大家学习之前,可以致信到xxxxxxxxxx,获取相关的资料和软件。如果大家在学习过程遇到问题,也可以将问题发送到该邮箱。我们尽可能给大家解决。
3.特别声明
因为篇幅有限,书中在讲解代码时很难细致到每行代码,如有疏漏可能会造成读者制作效果与书中所讲不一致的情况,本书附带源代码,此时应该以代码为准。
目录
第1章Unity自带网络功能——实例:乒乓球游戏 (1)
1.1 实现机制 (1)
1.1.1 NetworkView组件 (1)
1.1.2 自定义串行化数据 (2)
1.1.3 使用远程过程调用 (2)
1.2 默认服务器机制 (4)
1.2.1 初始化服务器 (4)
1.2.2 连接到服务器 (5)
1.3 自定义服务器机制 (7)
1.3.1 设置主服务器 (8)
1.3.2 连接到自定义的主服务器 (11)
1.4 注册“服务” (12)
1.4.1 在主服务器上注册一个服务 (13)
1.4.2 在游戏视图上浏览特定服务 (14)
1.5 实例:乒乓球游戏 (18)
1.5.1 搭建游戏场景 (18)
1.5.2 游戏的功能逻辑 (20)
1.5.3 编写实现游戏逻辑的脚本 (20)
1.6 为游戏实例添加网络对战功能 (28)
1.6.1 初始化服务器 (28)
1.6.2 串行化球拍的移动状态 (29)
1.6.3 指定球拍出现的时机 (31)
1.6.4 串行化乒乓球的移动状态 (33)
1.6.5 游戏分数的网络化 (36)
1.6.6 加入游戏 (39)
1.6.7 网络对战功能演示 (41)
1.7 Unity自带网络功能——模型示意图 (43)
第2章提供网络功能的PUN插件——实例:聊天室 (44)
2.1 配置PUN环境 (44)
2.1.1 什么是PUN (44)
2.1.2 获取PUN插件 (44)
2.1.3 PUN的核心——Photon View组件 (47)
2.2 使用PUN (49)
2.2.1 连接到Photon Cloud,获取Room列表 (49)
2.2.2 创建Room (51)
2.2.3 加入Room (53)
2.3 聊天室实例使用的技术 (53)
2.3.1 筛选满足特定条件的room (53)
·II·
2.3.2 随机加入一个room (57)
2.3.3 查看其它玩家的状态 (59)
2.3.4 同步所有玩家的游戏场景 (60)
2.3.5 效果展示 (62)
2.4 实例:聊天室 (64)
2.4.1 “上线”窗口 (64)
2.4.2 “大厅”窗口 (66)
2.4.3 “好友列表”窗口 (68)
2.4.4 “聊天”窗口 (71)unity 教程
2.4.5 聊天室效果展示 (73)
第3章专属的服务器技术Player.IO——实例:RTS协议 (76)
3.1 Player.IO概述 (76)
3.2 配置服务器——Development Server (76)
3.3 客户端的操作 (81)
3.3.1 使用Unity Client SDK (81)
3.3.2 连接到Player.IO (82)
3.3.3 获取room列表 (83)
3.3.4 连接到room (85)
3.3.5 创建room (86)
3.3.6 消息的发送与接收 (92)
3.4 配置Development Server (95)
3.5 数据库服务——BigDB (99)
3.5.1 写入数据 (100)
3.5.2 载入数据 (102)
3.6 实例:RTS协议概述 (103)
3.7 RTS协议——服务器端 (104)
3.7.1 服务器端架构 (104)
3.7.2 服务器处理来自客户端的消息 (107)
3.7.3 服务器对其它事件的处理 (112)
3.8 RTS协议——客户端 (114)
3.8.1 MainMenu场景 (115)
3.8.2 GameplayScene场景 (118)
第1章 Unity自带网络功能——实例:乒乓球游戏
Unity拥有大量的第三方插件,专门提供了对网络功能的支持。但是,大部分开发者第一次接触到的还是Unity自带的网络功能,也就是大家经常说到的Unity Networking API。
View命令,此组件如图1-2所示。
图1-2 NetworkView组件
提示:此组件被添加到了游戏场景中默认创建的对象Main Camera上。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论