网络虚拟环境(net-VE)提供了一个网络化的三维虚拟空间,在这个空间里,位于不同物理位置的用户都能进行实时交互。net-VE的应用目前主要集中于军队、航空和娱乐产业中,用来模拟战争场景、增强工程设计或体验网络游戏世界。关于net-VE的研究和应用正席卷全球,是信息技术领域的一个热点。
由两位行业先驱所写的这本书,向读者呈现了net-VE的基础性成果,提供了关于net-VE全面细致的内容。本书覆盖net—VE的基础技术,并向读者提供如何逐步设计和构建交互式三维虚拟环境的方法。特别地,作者将重点放在如何克服阻碍实时交互系统开发限制的策略之上,并且描述了许多成功的、实际存在的实现net—VE的技术和应用。
结合了虚拟现实与网络通信技术的网络虚拟环境(net-VE)是一种可以创建和体验虚拟世界的计算机系统。在这个系统中,位于不同物理位置的多个用户或多个虚拟环境通过网络进行实时交互、共享信息。近年来,网络虚拟环境系统正处于快速发展中,是信息技术研究领域的热点之一。
本书探讨了实现net-VE的技术及其他相关主题,包括net-VE的起源和面临的挑战、实现net-VE的网络技术、通信技术、动态共享状态的管理、net-VE系统设计、可扩展性、性能优化等,书中还包括大量的实例,它们是理解这些技术的基础。
第1章 网络虚拟环境的前景和挑战
1.1 什么是网络虚拟环境
1.1.1 图形引擎和显示器
1.1.2 控制和通信设备
1.1.3 处理系统
1.1.4 数据网络
1.2 网络虚拟环境的设计和开发所面临的挑战
1.2.1 网络带宽
1.2.2 异构性
1.2.3 分布式交互
1.2.4 实时系统设计和资源管理
1.2.5 故障处理
1.2.6 规模可扩展性
1.2.7 部署和配置
1.3 小结
第2章 网络虚拟环境的起源
2.1 美国国防部与网络虚拟环境
2.1.1 SIMNET
2.1.2 分布式交互仿真
2.2 网络游戏和演示
2.2.1 SGI公司的Flight和Dogfight
2.2.2 Doom
2.2.3 其他游戏
2.3 学术研究中的网络虚拟环境系统
2.3.1 NPSNET
2.3.2 PARADISE
2.3.3 DIVE
2.3.4 BrickNet
2.3.5 MR-TPP
2.3.6 其他
2.4 小结
第3章 网络入门
3.1 数据传输的基本原理
3.1.1 网络等待时间
3.1.2 网络带宽
3.1.3 网络可靠性
3.1.4 网络协议
3.2 BSD套接字结构
3.2.1 套接字和端口
3.2.2 因特网协议
3.3 用于网络虚拟环境的因特网协议
3.3.1 传输控制协议
3.3.2 用户数据报协议
3.3.3 使用UDP的IP广播
3.3.4 IP组播
3.4 选择一个网络虚拟环境协议
3.4.1 使用TCP/IP
3.4.2 使用UDP/IP
3.4.3 使用IP广播
3.4.4 使用IP组播
3.5 小结
第4章 通信架构
4.1 局域网中的两个玩家
4.2 多玩家的客户-服务器系统
4.3 多服务器的多玩家客户-服务器架构
4.4 对等架构
4.5 小结
第5章 动态共享状态的管理
5.1 一致性与吞吐量的平衡
5.1.1 为什么要进行平衡
5.1.2 平衡的设计内涵
5.2 在集中式仓库中维持共享状态
5.2.1 文件仓库
5.2.2 将仓库置于服务器主存中
5.2.3 虚拟仓库
5.2.4 集中式仓库的优缺点
5.3 通过经常性状态重建降低主机间的耦合性
5.3.1 显式的所有权
5.3.2 使用经常性状态重建方法的系统
5.3.3 降低广播范围
5.3.4 经常性状态重建的优缺点
5.4 航位推测法
5.4.1 预测和收敛
5.4.2 利用导数多项式推导
5.4.3 物体预测
5.4.4 收敛算法
5.4.5 无规律的发送
5.4.6 航位推测的优缺点
5.5 小结
第6章 系统设计
6.1 单线程和多线程
6.1.1 单线程
6.1.2 多线程
6.2 重要的子系统
6.2.1 实时渲染:几何裁剪和细节层次处理
6.2.2 实时冲突检测及反馈
6.2.3 计算资源管理
6.3 小结
第7章 针对可扩展性和性能的资源管理
7.1 以信息为中心看资源
7.2 优化通信协议
7.2.1 包压缩
7.2.2 包聚合
7.3 控制数据可见性
7.3.1 兴趣区域过滤订购
7.3.2 组播
7.3.3 混合组播聚合
7.4 利用感知局限性
7.4.1 使用细节层次感知技术
7.4.2 使用时间感知技术
7.5 增强系统架构
7.5.1 服务器簇
7.5.2 对等服务器系统
7.6 小结
第8章 因特网上的网络虚拟环境
8.1 基于VRML的虚拟环境
8.1.1 网络VRML环境举例
8.1.2 虚拟现实传输协议
8.2 因特网游戏
8.2.1 在线游戏服务概述
8.2.2 因特网游戏软件架构
8.2.3 未来因特网游戏的发展方向
8.3 小结
第9章 前景与展望
9.1 更好的库支持
9.1.1 Bamboo
9.1.2 高层次的体系结构
9.1.3 基于Java的工具包
9.1.4 工具包的研发无处不在
9.2 更好的因特网
9.3 前沿研究
9.4 过去,现在,未来
附录 C,C++和Java中的网络通信
索引