基于VRML的分布交互式虚拟战场仿真
摘要:虚拟战场环境仿真是当前研究的热门内容,而分布式虚拟现实已成为当今网络技术发展的必然趋势。该文将虚拟现实技术应用于战场仿真,采用VRML 等网络关键技术作为支撑平台,实现了仿真的分布特性和交互特性。
中图分类号:TP391. 9 ;TP311. 52 文献标识码:A
1、虚拟战场仿真
虚拟战场仿真研究已有多年的历史。60 年代初ARPA就和美国海军科研办公室联合开始了头盔显示器(HMD) 的研究。在软硬件的研制达到一定水平的时候,美国的DRAPA开始为坦克的作战训练开发了一个虚拟战场。这可以看作是虚拟战场仿真的雏形。最后形成了一个美、德两国200 个坦克训练器联合虚拟作战网络系统SIMNET。除此之外,DRAPA 仍不满足,计划进一步扩大仿真数据库,将各个国家的不同兵力汇入SIMNET 系统,把空战仿真系统和海战仿真系统与SIMNET相连。现在美国国防部与工业界已经在SIM2NET的基础上,共同促进了分布交互式仿真(DIS) 技术的发展,并在此基础上开发了新一代分布交互式仿真体系结构HLA 标准 。
可见,虚拟战场仿真,就是利用计算机软件的强大模拟功能,基于先进的仿真技术和开发环境,对军事作战领域内的各种作战条件、武器装备、兵力部署等进行逼真的模拟,形成一个虚拟的“数字化”战场,以便进行实战演练和作战效能分析。
以往的虚拟战场仿真由于技术上的限制,使得仿真模拟的环境范围有限,并且人机交互作用不够强,不能真正适应现代高技术战争瞬息万变的特征,分布性存在缺陷。本文就是研究如何采用DVR(分布式虚拟现实) 来实现分布交互式虚拟战场仿真,并对其中要采用的关键技术进行了理论上的探讨。
2、分布式虚拟战场的关键技术
分布式虚拟战场实现的基础是虚拟现实技术,虚拟现实简称VR ,它具有突出的3I 特性,即沉浸度( Immersion) 、交互性( Interaction) 和想象力( Imagination) [2 ] 。而组成一个分布式的虚拟现实系统的基本部分有人机交互、逼真的三维虚拟环境、各种虚拟实体、网络通信以及将上述部分综合在一起的系统体系结构。这就构成了分布式虚拟战场的骨胳框架。
2. 1 人机交互
人机交互通过各种交互设备(如HMD、数据手套、数据衣、触觉和力反馈设备等) 与计算机相连,将动作反映于“化身”(即对象) 上,然后通过“化身”作用于虚拟战场环境,与虚拟战场中的其他部件进行交互。虚拟战场环境是对真实战场的模拟(如各种车辆、坦克和火炮) ,所以需重现武器装备的机动位置、颜色、形状等,一方面使演练人员适应未来的真实作战环境,另一方面对未来高新武器装备的各种性能进行大致评估。
实时性是人机交互的重要需求。产生延迟的因素有:各种输入设备延迟、绘制延迟、网络延迟等。这些都会降低虚拟战场的真实度。可采用多机分布式处理各种设备的输入。
2. 2 逼真的三维虚拟场景
三维虚拟场景是虚拟战场的重要组成部分。它可以对真实存在的某一作战区域进行地理上的模拟,也可以对即将发生的战争进行想象中的设计。逼真度是影响沉浸感的重要因素。实现逼真的虚拟战场主要包括战场建模、表示、管理和绘制几个方面。
战场建模最主要的工作是要建立一个战场综合数据库,内容有:
①地形表面;
②自然物和人造特征物,如道路、桥梁、坦克、战斗机;
③气象环境,如阴晴雨雪;
④对象与环境交互的效果,如爆炸、火光等。
战场综合数据库构造步骤为:
①根据仿真需要选择各种装备特征及地理数据;
②进行数据一致性处理,包括筛选、格式转化等;
③生成特征物三维模型;
④三维特征物模型与地形的整合;
⑤加入其他模型形成综合数据库。
三维场景绘制是将上述建模生成的三维几何模型,采用透视投影的方法将其绘制到计算机屏幕上。它以参与者的观点来绘制三维场景,核心技术为三维图形技术。在绘制中,实时性非常重要。虚拟战场环境强调与演练人员的交互,当视点变换时,要求场景会根据视点的位置重新绘制且很快刷新。
分布式虚拟战场中有很多“装备部件”,可由演练人员直接控制,或计算机自动生成并控制。在虚拟战场中将这些“装备部件”表现出来成为实体建模,包括:几何特性,是指武器装备的曲线、方形、多边形等特征;物理特性,是指武器装备质量、密度、材料、速度等,比如摧毁工事地点引起的建筑物表现出的坍塌碎片效果。
2. 3 网络通信
分布式虚拟战场的网络通信保证了网上各节点时间和空间上的一致性。
通信模式与具体的应用有关,可选的模式有对等模式(Peer - to - Peer) 和客户/ 服务器(C/ S) 模式。前者适合于平级单位节点间的直接通信,而后者则适合于上下级具有指挥与被指挥关系单位之间的通信。消息传递方式可以是点播、广播或组播;采用的传输层协议可以是TCP 或UDP。
数据分布模型是指各节点共享的虚拟数据库在网上的发布方式和规律,以及保持数据一致性的机制。共享的虚拟战场数据库包括地形数据库、装备实体数据库、虚拟对象的当前状态等。分布模式有集中式和分布式两种。分布式又区分为完全相同的分布和部分相同的分布。
2. 4 战场环境的体系结构
战场环境的体系结构将上述的网络管理、图形绘制、人机交互、战场建模以及碰撞检测等成分合理有效地结合在一起,成为一个有机的整体。通常采用的方法是将这些不同的功能划分为一些并行单元,通过某种方式共享数据。这样一方面提高了系统的性能(如可以采用并行多处理机系统,采用并发控制技术) ,另一方面具有良好的扩充性和可伸展性。
3、选用VRML 技术作为支撑平台
3. 1 VRML 的优越性
VRML(Virtual Reality Modeling Language) 为标准的虚拟现实建模语言,它定义了一种包含三维图象和多媒体的文件格式,模拟现实中的各种事件,可以与互联网上的三维环境方便集成,具有以下适合于虚拟现实环境的特点:
1) 支持树状结构。利用VRML 的树状结构可以形象地将对象结构或地域上的结合性表达出来。对于对象的位置、运动表示非常方便,同时利于查询和修改对象状态。
2) 交互功能。VRML 可以和其他语言如Java 语言结合起来构造出具备交互能力的三维场景。目前的新版本VRML2.0 可以通过扩展其执行模式进入Java 世界,利用Script 节点实现与用户的交互。
3) 支持动画。VRML 面向网络,传输的是“轻量级”的WRL 文件,即只传送描述场景的模型,而把动画帧的生成放在本地,这样使得动画的生成具有较高的实时性 。
4) 支持分布式环境,具有较强的建模能力,以及提供的LOD(细节等级管理) 、Collision(碰撞检测) 和可以很方便的构造地形的ElevationGrid 等节点为创建虚拟世界提供了很大的方便。
由于VRML 以上的特点,决定了采用VRML 及其浏览器作为虚拟战场环境的支撑平台。
3. 2 利用VRML 的分布式虚拟战场结构方案
使用VRML 建立虚拟战场场景及用户(即演练员) 替身。虚拟战场的场景及用户替身可以分布在位于Internet 上的任一台服务器中,它们之间通过超级连接联结在一起。如前所述,VRML 面向网络,用其建立的虚拟环境文件非常小,且可以以压缩方式在网上传输。
使用Java 对VRML 的Script 节点编程,完成用户登录、用户行为的表示、并使用TCP/ IP 协议传递用户在虚拟战场中的交互情况(位置移动信息及动作等功能) 。根据战场中用户身份的不同,可以在用户登录中加入密码认证机制,且规定不同的用户只能拥有相应的操作权限,比如对战场中武器装备的管理和维护,对兵力的部署及调用等。
基于VRML 分布式虚拟战场(DVWE) 结构方案如图1 所示。
图1 VRML 平台上的分布式虚拟战场环境(DVWE) 结构
1) 客户/ 服务器(Clients/ Server) 结构
C/ S 结构中服务器充当DVWE 中的管理员职责,它负责维护虚拟战场的场景及用户的注册等。客户端可以维护一部分虚拟场景及用户自己的替身(Avatar) 。当某一用户的状态发生改变时,它将通知服务器,然后由服务器通知其他用户。这种结构也可以采用线性预测递推算法,比如对某一“战斗机”的运动进行递推运算,从而减少要传输的数据量。
当客户端的推算模型超时或者结果出错时,才向服务器发出状态更新请求,由服务器将该“战斗机”的最新状态发给请求客户。
2) 对等(Peer - to - Peer) 结构
对等结构中各个用户的地位平等,虚拟战场模型可以分布于各个用户计算机中,通过VRML 的超链接能力链接在一起,用户状态的改变可以通过点播、广播或多播方式通知彼此用户。
4、分布式虚拟战场的交互通信实现
如前所述,VRML 本身并不具备与外部交互的能力,它必须和其他语言如Java 语言结合起来才能构造出具备交互能力的三维场景。由于Java 与网络的有力和紧密的一致性,所以我们将Java 和VRML 相结合来实现分布式虚拟战场的交互通信。具体来说是通过一个特殊的Script节点,将Java 的网络通信功能和文件访问功能应用到该节点中去,这样就可实现交互和分布式控制。Script 节点和利用Java 或Java Script 语言写成的程序脚本,提供了对VRML 的通信能力与交互性强有力的扩充。由于篇幅所限,具体实现过程不再赘述。
5、总结
由于网络技术与虚拟现实的结合,使得分布式虚拟现实(DVR) 已成为当今发展的趋势,在此基础上构建分布的具有交互性的虚拟战场仿真环境已经成为现实,并且在军事仿真,尤其是集团训练中得到了广泛的应用。美国国防部开发的基于HLA 的分布式仿真系统STOW97 便是一个成功的例子。随着数据库技术、分布技术、面向对象技术的涌现和发展,虚拟战场仿真环境将更加逼真,更加丰富,并进一步向着高重用性和高度互操作性的方向发展。
[作者简介]
雷 鸣(1978. 6 - ) ,男(汉族) ,陕西大荔人,空军工程大学电讯工程学院硕士研究生,主攻方向为军用通信与信息系统;
冯永浩(1963 - ) ,男(汉族) ,河北石家庄人, 空军工程大学电讯工程学院副教授,硕士生导师。研究方向为军用通信与信息系统;
张 军(1969 - ) ,男(汉族) ,湖南湘潭人,空军工程大学电讯工程学院硕士研究生,主攻方向为军用通信与信息系统。






