出版社:清华大学出版社
年代:2014
定价:59.0
本书详细阐述了网络图形学的相关技术并提供了一个真实的系统框架及其扩展操作,大量的开发用例以及实现代码体现了当前业界的开发成果、游戏设计方案以及令人炫目的场景作品。
目 录
第1部分 基 础
第1章 概述 3
1.1 什么是NVE和NG 3
1.2 共享虚拟环境的幻象 4
1.3 一些历史 5
1.3.1 Internet 7
1.3.2 模拟器 12
1.3.3 Multiuser dungeons 16
1.3.4 电子游戏 17
1.3.5 虚拟现实系统 22
1.3.6 MMORPG 24
1.3.7 社交空间 27
1.4 研究软件架构 29
1.4.1 软件的作用和责任 31
1.4.2 与其他网络代码的区别 31
1.5 架构 32
参考文献 33
第2章 基础知识 37
2.1 类鸟群(boids) 37
2.1.1 Boid规则 38
2.1.2 独立实施 39
2.2 分布式类鸟群:概念 42
2.3 分布式类鸟群:实施 43
2.3.1 修订的模拟器和数据模型 44
2.3.2 网络的概念 45
2.3.3 网络协议 46
2.3.4 网络组件的实现 47
2.3.5 发送UDP数据包 48
2.3.6 发送TCP数据流 51
2.4 镜像 54
参考文献 58
第3章 Internet概述 59
3.1 Internet 59
3.2 应用层(Application) 62
3.2.1 应用层协议 63
3.2.2 应用程序的QoS 64
3.2.3 常见的应用程序和端口 64
3.2.4 RFC 65
3.2.5 DNS 66
3.2.6 Telnet和HTTP 67
3.3 传输层(Transport Layer) 69
3.3.1 UDP的实现 69
3.3.2 TCP的基础知识 72
3.3.3 TCP的可靠性 73
3.3.4 打开和关闭TCP连接 79
3.3.5 TCP中的流量控制和拥塞避免 81
3.4 网络层(Network Layer) 82
3.4.1 网络地址转换 84
3.4.2 IP数据包 85
3.4.3 Ping、traceroute和ICMP 89
3.4.4 Internet上的路由 91
3.4.5 DHCP 92
3.5 链路(Link)和物理层(Physics Layer) 93
3.5.1 以太网(Ethernet) 94
3.5.2 对比 95
3.6 未来网络设备 95
3.6.1 组播传输(Multicast) 96
3.6.2 网络QoS 97
3.7 总结 99
参考文献 99
第4章 更进一步 101
4.1 类鸟群 101
4.1.1 架构 102
4.1.2 协议 103
4.1.3 重构代码库 103
4.2 简单的点对点对等模式 105
4.2.1 系统架构 105
4.2.2 数据模型 106
4.2.3 网络 108
4.2.4 协议 109
4.3 主控者的点对点 111
4.3.1 系统架构 113
4.3.2 数据模型 113
4.3.3 网络 114
4.3.4 协议 115
4.4 会合服务器的点对点 118
4.4.1 系统架构 119
4.4.2 数据模型 120
4.4.3 网络 121
4.4.4 协议 121
4.5 客户端/服务器 123
4.5.1 系统架构 123
4.5.2 数据模型 125
4.5.3 网络 125
4.5.4 协议 127
4.6 多播 128
4.6.1 系统架构 130
4.6.2 数据模型 130
4.6.3 网络 131
4.6.4 协议 133
4.7 扩展 134
4.7.1 协议设计 134
4.7.2 网络补偿 135
4.7.3 规模 135
4.7.4 二进制协议 135
4.8 结论 136
参考文献 136
第2部分 基 本 原 理
第5章 网络图形学中的问题 139
5.1 独立系统的架构 139
5.1.1 引擎和引擎框架 141
5.1.2 模块 143
5.1.3 内容 144
5.1.4 行为 145
5.2 网络的职责 145
5.2.1 设备I/O共享 146
5.2.2 数据模型共享 147
5.2.3 命令/事件流 148
5.2.4 规模与应对 149
5.3 初始化 149
5.4 服务器和对等机的响应 151
5.5 关键和非关键 152
5.6 同步或非同步 153
5.7 所有权和锁 154
5.8 持久性 154
5.9 延迟与带宽 155
5.10 总结 155
参考文献 156
第6章 套接字与中间件 159
6.1 中间件的作用 159
6.2 低层次套接字API 160
6.2.1 主函数 160
6.2.2 命名辅助函数和选项 162
6.2.3 网络字节顺序 164
6.2.4 范例 165
6.2.5 套接字使用模式 169
6.2.6 Windows 170
6.2.7 同步I/O 170
6.2.8 评论和探讨 172
6.3 C和C++网络中间件 173
6.3.1 HawkNL 173
6.3.2 SDL_Net 173
6.3.3 ACE 175
6.4 结论 177
参考文献 177
第7章 中间件和基于消息的系统 179
7.1 基于消息的系统 179
7.2 DIS 179
7.3 X3D和DIS 182
7.3.1 X3D基础 183
7.3.2 数据流和动画 184
7.3.3 脚本和接口 187
7.3.4 VRML/X3D网络策略 191
7.3.5 X3D和DIS方案 194
7.4 X3D、HawkNL和DIS 195
7.4.1 发送DIS数据包 195
7.4.2 接收DIS数据包 198
7.5 结论 199
参考文献 200
第8章 中间件和对象共享系统 203
8.1 对象共享系统 203
8.2 RakNet 205
8.3 使用对象共享的类鸟群 207
8.3.1 主应用程序 213
8.3.2 讨论 217
8.4 一般的对象共享 217
8.4.1 共享策略 217
8.4.2 可见性和采样率 218
8.5 所有权 218
8.6 场景图、对象共享和消息 223
8.7 结论 224
参考文献 225
第9章 其他网络组件 227
9.1 远程方法调用 227
9.1.1 RPC 228
9.1.2 XML-RPC 234
9.1.3 CORBA 235
9.1.4 讨论 236
9.2 DIVE 237
9.2.1 DIVE概述 237
9.2.2 DIVE实体 240
9.2.3 事件 244
9.2.4 脚本和事件作用域 247
9.2.5 网络 248
9.2.6 讨论 249
9.3 系统架构 249
9.4 结论 251
参考文献 252
第3部分 实 际 系 统
第10章 需求 259
10.1 一致性 260
10.1.1 系统角度 260
10.1.2 合理性和公平性 261
10.1.3 一致性—吞吐量的权衡 263
10.2 延迟和抖动 263
10.2.1 网络延迟的来源 264
10.2.2 抖动 265
10.2.3 时钟和延迟与抖动的测量 267
10.2.4 用户容忍度 269
10.2.5 在特定的系统中延迟的影响 271
10.3 带宽 272
10.3.1 测量法 273
10.3.2 交通模式 273
10.3.3 阻塞 277
10.4 互联网的状态 277
10.5 连接性 279
10.6 案例研究:BurnoutTM Paradise 281
10.6.1 汽车“力学” 282
10.6.2 游戏阶段和时间同步 283
10.6.3 游戏主机和对等网络 285
10.7 结论 285
参考文献 285
第11章 延迟和一致性 293
11.1 延时的影响 293
11.2 哑客户端(dumb client)和锁步(lockstep)同步 296
11.2.1 哑客户端 296
11.2.2 锁步同步 297
11.3 保守的模拟 298
11.4 时间 299
11.5 乐观的算法 302
11.6 客户端的超前预测 303
11.7 外推算法 306
11.7.1 基本航位推算 307
11.7.2 航位推算的变化方法 311
11.8 插值、播出延迟及本地延迟 312
11.9 本地知觉过滤器 317
11.10 暴露延时 320
11.11 结论 321
参考文献 321
第12章 可拓展性 327
12.1 服务架构 328
12.1.1 意识 328
12.1.2 队列、团队和服务的体系结构 329
12.2 兴趣管理概述 332
12.3 空间模型 335
12.3.1 区域模型 335
12.3.2 动态空间模型 337
12.3.3 能见度模型 338
12.4 交互规范和兴趣管理 341
12.4.1 兴趣的表达 341
12.4.2 兴趣管理 343
12.4.3 分布式兴趣管理的实例 344
12.5 从网络体系结构分离的兴趣管理 347
12.5.1 消息路由和消息过滤 347
12.5.2 作为管道过滤 348
12.5.3 路由和过滤的例子 349
12.5.4 网络层的委托组通信 350
12.6 服务器分区 351
12.6.1 服务器任务和静态分区 352
12.6.2 接缝和切换 353
12.6.3 负载平衡和动态分区 355
12.7 组通信服务 358
12.7.1 反射和隧道 359
12.7.2 自动覆盖多播 360
12.7.3 点对点通信的gossiping 360
12.7.4 特定组通信的路由服务 361
12.8 点对点 361
12.8.1 非结构化的点对点系统 362
12.8.2 结构化的对等网络系统 363
12.8.3 使用DHT的点对点支持 365
12.8.4 本地兴趣系统 366
12.8.5 自由更新的区域和边界集合 369
12.9 结论 371
参考文献 372
第13章 应用程序支持问题 383
13.1 安全和欺骗 383
13.1.1 客户端攻击 384
13.1.2 网络级别 386
13.1.3 服务器端 388
13.1.4 社会性 388
13.1.5 反响 389
13.2 二进制协议和压缩 389
13.2.1 二进制编码 389
13.2.2 压缩 391
13.3 流媒体 392
13.3.1 音频和视频 392
13.3.2 几何体和动画 394
13.3.3 混合和分组 397
13.4 重提协议决策 397
13.5 持久性和分层服务 398
13.6 集群 399
13.6.1 多显示系统 399
13.6.2 大规模模型 401
13.7 瘦客户机 402
13.8 结论 402
参考文献 403
网络虚拟环境图形架构设计
目 录
·IV·
·V·
本书详细阐述了与网络图形学相关的高效解决方案,主要包括Internet概述,网络图形学,套接字与中间件,中间件和基于消息的系统,中间件和对象共享系统,延迟和一致性,可拓展性,应用程序支持问题等内容。此外,本书还提供了相应的算法、代码以及伪代码,以帮助读者进一步理解相关方案的实现过程。
本书适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学教材和参考手册。