图书介绍
Unity 3D网络游戏实战PDF|Epub|txt|kindle电子书版本网盘下载
- 罗培羽著 著
- 出版社: 北京:机械工业出版社
- ISBN:7111549963
- 出版时间:2016
- 标注页数:430页
- 文件大小:49MB
- 文件页数:445页
- 主题词:
PDF下载
下载说明
Unity 3D网络游戏实战PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 掌握Unity3D基本元素1
1.1 最最简单的游戏2
1.1.1 Unity3D的界面构成2
1.1.2 在场景中创建立方体3
1.1.3 编写第一个程序4
1.1.4 测试游戏6
1.1.5 总结6
1.2 导入资源6
1.2.1 从本地导入素材7
1.2.2 从本地导入包文件7
1.2.3 从AssetStore导入8
1.3 山体系统10
1.4 灯光12
1.5 材质14
1.5.1 什么是材质14
1.5.2 如何创建材质15
1.5.3 MeshRenderer组件16
1.5.4 着色器16
1.6 预设19
1.6.1 制作预设19
1.6.2 预设的实例化19
1.6.3 使用预设的例子20
1.7 声音22
1.7.1 音源22
1.7.2 接收器23
1.7.3 简单播放器23
1.8 GUI24
1.8.1 GUI绘图基础24
1.8.2 编写HelloWorld程序25
1.8.3 绘制登录框25
1.9 场景26
1.9.1 创建场景27
1.9.2 场景切换27
1.10 导出游戏28
第2章 坦克控制单元31
2.1 导入坦克模型31
2.1.1 导入模型31
2.1.2 调整尺寸32
2.1.3 材质和贴图33
2.2 行走控制34
2.2.1 基础知识35
2.2.2 上下左右移动37
2.2.3 转向和前后移动38
2.3 相机跟随40
2.3.1 数学原理41
2.3.2 跟随算法42
2.3.3 设置跟随目标46
2.3.4 横向旋转相机47
2.3.5 纵向旋转相机50
2.3.6 滚轮调节距离51
2.4 旋转炮塔52
2.4.1 坦克的层次结构52
2.4.2 炮塔56
2.4.3 炮管58
2.5 车辆行驶61
2.5.1 Unity3D的物理系统62
2.5.2 车轮碰撞器65
2.5.3 控制车辆69
2.5.4 制动(刹车)73
2.6 轮子和履带74
2.6.1 轮子转动74
2.6.2 履带滚动77
2.7 音效79
第3章 火炮与敌人82
3.1 发射炮弹82
3.1.1 制作炮弹82
3.1.2 制作爆炸效果83
3.1.3 炮弹轨迹84
3.1.4 坦克开炮86
3.2 摧毁敌人88
3.2.1 坦克的控制类型88
3.2.2 坦克的生命值89
3.2.3 焚烧特效89
3.2.4 坦克被击中后的处理90
3.2.5 炮弹的攻击处理92
3.3 准心94
3.3.1 概念和原理94
3.3.2 计算目标射击位置96
3.3.3 计算实际射击位置101
3.3.4 绘制准心103
3.4 绘制生命条104
3.4.1 生命条素材105
3.4.2 绘制生命条105
3.5 击杀提示107
3.5.1 谁发射了炮弹107
3.5.2 谁被击中107
3.5.3 显示击杀提示108
3.6 炮弹的音效110
3.6.1 发射音效110
3.6.2 爆炸音效111
第4章 人工智能113
4.1 基于有限状态机的人工智能113
4.1.1 有限状态机113
4.1.2 分层有限状态机115
4.2 程序结构116
4.2.1 AI类的结构116
4.2.2 在Tank中调用118
4.3 搜寻目标119
4.3.1 搜寻规则119
4.3.2 坦克标签119
4.3.3 主动搜寻算法120
4.3.4 被动搜寻算法122
4.3.5 调试123
4.4 向敌人开炮124
4.4.1 电脑控制的方式124
4.4.2 炮塔炮管的目标角度125
4.4.3 调试程序125
4.4.4 开炮126
4.5 走向目的地128
4.5.1 路点128
4.5.2 路径128
4.5.3 根据场景标志物生成路径130
4.5.4 给AI指定路径131
4.5.5 操控坦克132
4.5.6 调试程序136
4.6 使用NavMesh计算路径137
4.6.1 NavMesh的原理137
4.6.2 生成导航图137
4.6.3 生成路径140
4.7 行为决策143
4.7.1 巡逻状态144
4.7.2 进攻状态145
4.7.3 调试146
4.8 战场系统147
4.8.1 单例模式147
4.8.2 BattleTank148
4.8.3 战场逻辑148
4.8.4 敌我区分150
4.8.5 出生点151
4.8.6 坦克预设152
4.8.7 开启一场两军对峙的战斗152
4.8.8 战场结算154
4.8.9 开始战斗155
第5章 代码分离的界面系统157
5.1 UnityUI系统157
5.1.1 创建UI部件158
5.1.2 Canvas画布159
5.1.3 EventSystem161
5.1.4 RectTransform162
5.1.5 其他UGUI组件164
5.1.6 事件触发165
5.1.7 简单的面板调用165
5.2 制作界面素材167
5.2.1 标题面板和信息面板167
5.2.2 制作预设168
5.3 面板基类PanelBase168
5.3.1 代码与资源分离的优势168
5.3.2 面板系统的设计169
5.3.3 面板基类的设计要点169
5.3.4 面板基类的实现170
5.4 面板管理器PanelMgr172
5.4.1 层级管理173
5.4.2 打开面板OpenPanel174
5.4.3 关闭面板ClosePanel176
5.5 面板逻辑176
5.5.1 标题面板TitlePanel176
5.5.2 信息面板InfoPanel178
5.6 调用界面系统179
5.6.1 界面系统的资源179
5.6.2 界面系统的调用179
5.7 胜负面板181
5.7.1 面板素材181
5.7.2 面板逻辑181
5.7.3 面板调用183
5.8 设置面板184
5.8.1 面板素材184
5.8.2 面板逻辑185
5.8.3 面板调用186
第6章 网络基础188
6.1 七层网络模型189
6.1.1 应用层190
6.1.2 传输层190
6.1.3 网络层190
6.1.4 数据链路层191
6.1.5 物理层191
6.2 IP与端口192
6.2.1 IP地址192
6.2.2 端口192
6.2.3 C#中的相关类型193
6.3 TCP协议193
6.3.1 TCP连接的建立193
6.3.2 TCP的数据传输195
6.3.3 TCP连接的终止195
6.4 Socket套接字196
6.4.1 Socket连接的流程196
6.4.2 Socket类196
6.5 同步Socket程序198
6.5.1 新建控制台程序198
6.5.2 编写服务端程序199
6.5.3 客户端界面202
6.5.4 客户端程序203
6.6 异步Socket程序205
6.6.1 BeginAccept205
6.6.2 BeginReceive205
6.6.3 Conn(state)206
6.6.4 服务端程序(主体结构)208
6.6.5 服务端程序(Accept回调)210
6.6.6 服务端程序(接收回调)211
6.6.7 开启服务端212
6.6.8 客户端界面212
6.6.9 客户端程序213
6.6.10 调试程序215
6.7 MySQL216
6.7.1 配置MySQL环境216
6.7.2 建立MySQL数据库218
6.7.3 MySQL基础知识218
6.7.4 MySQL留言板服务端程序220
6.7.5 调试程序222
6.8 类的序列化223
6.9 定时器225
6.10 线程互斥226
6.11 通信协议和消息列表228
6.11.1 通信协议228
6.11.2 服务端程序229
6.11.3 消息列表229
6.11.4 客户端场景230
6.11.5 客户端程序231
6.11.6 调试236
第7章 服务端框架238
7.1 服务端架构238
7.1.1 总体架构238
7.1.2 游戏流程239
7.1.3 连接的数据结构240
7.1.4 数据库结构241
7.1.5 项目结构241
7.2 数据管理类DataMgr243
7.2.1 数据表结构243
7.2.2 角色数据244
7.2.3 Player的初步版本244
7.2.4 连接数据库245
7.2.5 防止sql注入246
7.2.6 Register注册247
7.2.7 CreatePlayer创建角色249
7.2.8 登录校验250
7.2.9 获取角色数据251
7.2.10 保存角色数据252
7.2.11 调试253
7.3 临时数据255
7.4 网络管理类ServNet256
7.4.1 粘包分包现象256
7.4.2 粘包分包的处理方法256
7.4.3 Conn连接类257
7.4.4 ServNet网络处理类260
7.4.5 ReceiveCb的粘包分包处理261
7.4.6 发送消息264
7.4.7 启动服务端265
7.4.8 调试265
7.5 心跳267
7.5.1 心跳机制267
7.5.2 时间戳268
7.5.3 使用定时器269
7.5.4 心跳协议270
7.5.5 调试心跳协议270
7.6 协议271
7.6.1 协议基类272
7.6.2 字符串协议273
7.6.3 字节流协议274
7.6.4 字节流辅助方法276
7.6.5 使用协议278
7.6.6 调试280
7.7 中间层Player类282
7.7.1 登录流程282
7.7.2 下线282
7.7.3 Player类的实现283
7.8 消息分发285
7.8.1 消息处理的类285
7.8.2 消息处理类的实现286
7.8.3 反射287
7.9 注册登录289
7.9.1 协议289
7.9.2 注册功能290
7.9.3 登录功能291
7.9.4 登出功能292
7.9.5 获取分数功能293
7.9.6 增加分数功能293
7.9.7 输出服务端信息294
7.9.8 Main中的调用294
7.9.9 测试用客户端295
7.9.10 调试297
第8章 客户端网络模块300
8.1 网络模块设计300
8.1.1 整体架构300
8.1.2 监听表301
8.1.3 类结构301
8.2 委托302
8.2.1 使用委托302
8.2.2 示例302
8.2.3 操作符303
8.3 MsgDistribution消息分发304
8.3.1 MsgDistribution的成员304
8.3.2 DispatchMsgEvent305
8.3.3 AddListener306
8.4 Connection连接307
8.4.1 Connection的成员307
8.4.2 连接服务端309
8.4.3 关闭连接309
8.4.4 异步回调310
8.4.5 消息处理311
8.4.6 发送数据311
8.4.7 心跳机制312
8.5 NetMgr网络管理313
8.6 登录注册功能314
8.6.1 界面资源315
8.6.2 登录面板功能316
8.6.3 注册面板功能319
8.7 位置同步的服务端程序320
8.7.1 协议321
8.7.2 场景321
8.7.3 协议处理324
8.7.4 事件处理324
8.8 位置同步的客户端程序325
8.8.1 客户端资源325
8.8.2 客户端程序326
8.9 调试框架331
第9章 房间系统334
9.1 游戏界面335
9.1.1 登录面板335
9.1.2 注册面板336
9.1.3 提示面板337
9.1.4 UGUI的滑动区域338
9.1.5 房间列表面板340
9.1.6 房间面板342
9.1.7 创建预设343
9.2 协议设计344
9.3 提示框的功能实现346
9.4 登录注册的功能实现348
9.4.1 登录面板的功能348
9.4 2 GameMgr349
9.4.3 注册面板的功能350
9.4.4 调试351
9.5 房间列表面板的功能352
9.5.1 获取部件353
9.5.2 开启监听354
9.5.3 刷新成绩栏355
9.5.4 刷新房间列表355
9.5.5 刷新按钮357
9.5.6 加入房间357
9.5.7 新建房间358
9.5.8 登出359
9.5.9 测试面板360
9.6 房间面板的功能360
9.6.1 获取部件361
9.6.2 监听362
9.6.3 刷新列表362
9.6.4 退出按钮364
9.6.5 开始战斗365
9.6.6 测试面板366
第10章 房间系统服务端368
10.1 玩家数据368
10.2 房间类370
10.2.1 数据结构370
10.2.2 添加玩家371
10.2.3 删除玩家372
10.2.4 更换房主373
10.2.5 广播消息373
10.2.6 输出房间信息374
10.3 房间管理器374
10.3.1 数据结构374
10.3.2 创建房间375
10.3.3 离开房间376
10.3.4 输出房间列表376
10.4 玩家消息处理377
10.4.1 查询成绩GetAchieve377
10.4.2 获取房间列表GetRoomList377
10.4.3 创建房间CreateRoom378
10.4.4 加入房间EnterRoom379
10.4.5 获取房间信息GetRoomInfo380
10.4.6 离开房间LeaveRoom380
10.5 玩家事件处理381
10.6 调试382
第11章 战场系统386
11.1 协议设计386
11.2 开始战斗388
11.2.1 客户端战场数据389
11.2.2 获取阵营390
11.2.3 清理场景390
11.2.4 开始战斗391
11.2.5 产生坦克391
11.2.6 服务端战场数据394
11.2.7 服务端条件检测395
11.2.8 服务端开启战斗395
11.2.9 服务端消息处理396
11.2.10 调试程序397
11.3 三种同步位置方案398
11.3.1 瞬移式位置同步399
11.3.2 移动式位置同步400
11.3.3 预测式位置同步401
11.4 位置同步的服务端处理402
11.5 位置同步的客户端处理404
11.5.1 发送同步信息404
11.5.2 网络同步类型405
11.5.3 预测目标位置405
11.5.4 向目标位置移动408
11.5.5 监听服务端协议408
11.5.6 调试409
11.6 同步炮塔炮管410
11.7 轮子和履带411
第12章 炮火同步413
12.1 炮弹同步413
12.1.1 协议设计413
12.1.2 服务端处理414
12.1.3 客户端发送同步信息415
12.1.4 客户端接收同步信息416
12.2 伤害同步418
12.2.1 协议设计418
12.2.2 服务端处理418
12.2.3 客户端发送伤害信息420
12.2.4 客户端接收伤害信息420
12.3 胜负判断423
12.3.1 协议设计423
12.3.2 服务端胜负判断423
12.3.3 服务端处理战斗结果424
12.3.4 客户端接收战斗结果425
12.4 中途退出427
12.5 完整的游戏428