当前位置:主页 > 书籍配套资源 > 游戏编程配套资源
《网络多人游戏架构与编程》配套资源

《网络多人游戏架构与编程》配套资源

  • 更新:2022-06-21
  • 大小:26.09 MB
  • 类别:游戏编程
  • 作者:[美]JoshuaGlazer,Sanj
  • 出版:人民邮电出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

内容简介

网络多人游戏已经成为游戏产业的重要组成部分,本书是一本深入探讨关于网络多人游戏编程的图书。
全书分为13章,从网络游戏的基本概念、互联网、伯克利套接字、对象序列化、对象复制、网络拓扑和游戏案例、延迟、抖动和可靠性、改进的延迟处理、可扩展性、安全性、真实世界的引擎、玩家服务、云托管专用服务器等方面深入介绍了网络多人游戏开发的知识,既全面又详尽地剖析了众多核心概念。
本书的多数示例基于C++编写,适合对C++有一定了解的读者阅读。本书既可以作为大学计算机相关专业的指导教程,也可以作为普通读者学习网络游戏编程的参考指南。

目录

  • 第1章 网络游戏概述 1
  • 1.1 多人游戏的简要历程 1
  • 1.1.1 本地多人游戏 1
  • 1.1.2 早期网络多人游戏 1
  • 1.1.3 多用户网络游戏 2
  • 1.1.4 局域网游戏 3
  • 1.1.5 在线游戏 3
  • 1.1.6 大规模多人在线游戏 4
  • 1.1.7 移动网络游戏 4
  • 1.2 星际围攻:部落 5
  • 1.2.1 平台数据包模块 7
  • 1.2.2 连接管理器 7
  • 1.2.3 流管理器 8
  • 1.2.4 事件管理器 8
  • 1.2.5 ghost管理器 8
  • 1.2.6 移动管理器 9
  • 1.2.7 其他系统 9
  • 1.3 帝国时代 10
  • 1.3.1 轮班计时器 11
  • 1.3.2 同步 12
  • 1.4 总结 13
  • 1.5 复习题 13
  • 1.6 延伸的阅读资料 14
  • 第2章 互联网 15
  • 2.1 起源:分组交换 15
  • 2.2 TCP/IP模型 17
  • 2.3 物理层 18
  • 2.4 链路层 18
  • 2.5 网络层 22
  • 2.5.1 IPv4 23
  • 2.5.2 IPv6 36
  • 2.6 传输层 37
  • 2.6.1 UDP 38
  • 2.6.2 TCP 39
  • 2.7 应用层 48
  • 2.7.1 DHCP 49
  • 2.7.2 DNS 49
  • 2.8 NAT 50
  • 2.9 总结 56
  • 2.10 复习题 57
  • 2.11 延伸的阅读资料 58
  • 第3章 伯克利套接字 61
  • 3.1 创建Socket 61
  • 3.2 API操作系统差异 63
  • 3.3 socket地址 66
  • 3.3.1 类型安全 68
  • 3.3.2 用字符串初始化sockaddr 70
  • 3.3.3 绑定socket 73
  • 3.4 UDP Socket 74
  • 3.5 TCP Socket 79
  • 3.5.1 通过连接的socket实现发送和接收 80
  • 3.5.2 类型安全的TCP Socket 82
  • 3.6 阻塞和非阻塞I/O 84
  • 3.6.1 多线程 85
  • 3.6.2 非阻塞I/O 86
  • 3.6.3 Select 88
  • 3.7 其他Socket选项 92
  • 3.8 总结 94
  • 3.9 复习题 94
  • 3.10 延伸的阅读资料 95
  • 第4章 对象序列化 97
  • 4.1 序列化的需求 97
  • 4.2 流 100
  • 4.2.1 内存流 101
  • 4.2.2 字节存储次序的兼容性 105
  • 4.2.3 比特流 109
  • 4.3 引用数据 115
  • 4.3.1 内联或嵌入 116
  • 4.3.2 链接 117
  • 4.4 压缩 119
  • 4.4.1 稀疏数组压缩 120
  • 4.4.2 熵编码 121
  • 4.4.3 定点 123
  • 4.4.4 几何压缩 125
  • 4.5 可维护性 127
  • 4.5.1 抽象序列化方向 127
  • 4.5.2 数据驱动的序列化 129
  • 4.6 总结 132
  • 4.7 复习题 133
  • 4.8 延伸的阅读资料 134
  • 第5章 对象复制 135
  • 5.1 世界状态 135
  • 5.2 复制对象 135
  • 5.2.1 对象创建注册表 139
  • 5.2.2 一个数据包中的多个对象 143
  • 5.3 朴素的世界状态复制方法 144
  • 5.4 世界状态中的变化 148
  • 5.5 RPC作为序列化对象 155
  • 5.6 自定义解决方案 158
  • 5.7 总结 159
  • 5.8 复习题 160
  • 5.9 延伸的阅读资料 160
  • 第6章 网络拓扑和游戏案例 161
  • 6.1 网络拓扑 161
  • 6.1.1 客户端-服务器 161
  • 6.1.2 对等网络 163
  • 6.2 客户端-服务器的实现 165
  • 6.2.1 服务器和客户端的代码分离 166
  • 6.2.2 网络管理器和欢迎新客户端 167
  • 6.2.3 输入共享和客户端代理 172
  • 6.3 对等网络的实现 177
  • 6.3.1 欢迎新对等体和开始游戏 179
  • 6.3.2 命令共享和锁步回合制 181
  • 6.3.3 保持同步 187
  • 6.4 总结 192
  • 6.5 复习题 192
  • 6.6 延伸的阅读资料 193
  • 第7章 延迟、抖动和可靠性 195
  • 7.1 延迟 195
  • 7.1.1 非网络延迟 195
  • 7.1.2 网络延迟 198
  • 7.2 抖动 199
  • 7.3 数据包丢失 201
  • 7.4 可靠性:TCP还是UDP 202
  • 7.5 数据包传递通知 204
  • 7.5.1 标记传出的数据包 205
  • 7.5.2 接收数据包并发送确认 206
  • 7.5.3 接收确认并传递状态 211
  • 7.6 对象复制可靠性 216
  • 7.7 模拟真实世界的条件 224
  • 7.8 总结 226
  • 7.9 复习题 227
  • 7.10 延伸的阅读资料 228
  • 第8章 改进的延迟处理 229
  • 8.1 沉默的客户终端 229
  • 8.2 客户端插值 231
  • 8.3 客户端预测 233
  • 8.3.1 航位推测法 236
  • 8.3.2 客户端移动预测和重放 238
  • 8.3.3 通过技巧和优化隐藏延迟 243
  • 8.4 服务器端回退 244
  • 8.5 总结 245
  • 8.6 复习题 246
  • 8.7 延伸的阅读资料 246
  • 第9章 可扩展性 247
  • 9.1 对象范围和相关性 247
  • 9.1.1 静态区域 248
  • 9.1.2 使用视锥 249
  • 9.1.3 其他可见性技术 250
  • 9.1.4 不可见时的相关性 252
  • 9.2 服务器分区 253
  • 9.3 实例化 255
  • 9.4 优先级和频率 255
  • 9.5 总结 256
  • 9.6 复习题 257
  • 9.7 延伸的阅读资料 257
  • 第10章 安全性 259
  • 10.1 数据包嗅探 259
  • 10.1.1 中间人攻击 259
  • 10.1.2 在主机上的数据包嗅探 262
  • 10.2 输入验证 263
  • 10.3 软件作弊检测 264
  • 10.3.1 维尔福反作弊系统 265
  • 10.3.2 典狱长反作弊系统 266
  • 10.4 保护服务器 267
  • 10.4.1 分布式拒绝服务攻击 267
  • 10.4.2 坏数据 267
  • 10.4.3 时序攻击 268
  • 10.4.4 入侵 269
  • 10.5 总结 270
  • 10.6 复习题 271
  • 10.7 延伸的阅读资料 271
  • 第11章 真实世界的引擎 273
  • 11.1 虚幻引擎4 273
  • 11.1.1 套接字和基本的网络体系 273
  • 11.1.2 游戏对象和拓扑 274
  • 11.1.3 Actor复制 275
  • 11.1.4 远程过程调用 276
  • 11.2 Unity 277
  • 11.2.1 传输层API 278
  • 11.2.2 游戏对象和拓扑 278
  • 11.2.3 生成对象和复制 279
  • 11.2.4 远程过程调用 279
  • 11.2.5 比赛安排 280
  • 11.3 总结 280
  • 11.4 复习题 281
  • 11.5 延伸的阅读资料 281
  • 第12章 玩家服务 283
  • 12.1 选择一种玩家服务 283
  • 12.2 基本设置 283
  • 12.2.1 初始化、运行和关闭 285
  • 12.2.2 用户ID和名称 286
  • 12.3 游戏大厅和比赛安排 287
  • 12.4 网络 291
  • 12.5 玩家统计 294
  • 12.6 玩家成就 299
  • 12.7 排行榜 300
  • 12.8 其他服务 302
  • 12.9 总结 303
  • 12.10 复习题 303
  • 12.11 延伸的阅读资料 304
  • 第13章 云托管专用服务器 305
  • 13.1 托管或不托管 305
  • 13.2 行业工具 306
  • 13.2.1 REST 307
  • 13.2.2 JSON 307
  • 13.2.3 Node.JS 308
  • 13.3 概述和术语 308
  • 13.3.1 服务器游戏实例 309
  • 13.3.2 游戏服务器进程 309
  • 13.3.3 游戏服务器 310
  • 13.3.4 硬件 311
  • 13.4 本地服务器进程管理器 311
  • 13.5 虚拟机管理器 318
  • 13.6 总结 327
  • 13.7 复习题 328
  • 13.8 延伸的阅读资料 328
  • 附录A 现代C++基础 329

资源下载

资源下载地址1:https://box.lenovo.com/l/h06AcW

相关资源

网友留言