




已阅读5页,还剩55页未读, 继续免费阅读
(计算机软件与理论专业论文)基于虚拟现实的分布式现实战场环境研究和实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京邮电举院磺士研究生攀位论文 摘要 廉拟现实技术怒= 十世纪朱才兴起的一门崭新的综合傲信息技术。康拟现实 的目标( v r ,v i 咖a lr e a l i t y ) ,就是利用计算机技术来生成个包括了视觉、 暇觉、触觉殴及嗅激等多耪感觉的三维虚拟毯器( v i 豫1w o r l d ) ,让髑户可以 苁自懑豹视点出发,秘臻自然酌鼓戆和菜些交溆设备辩这一照成豹虚拟搬界客俸 进行浏龅和交互考察。随着近年来计算机网络通讯技术的迅涟崛起,架构在网络 虚拟现实领域的构攥一分布式虚拟现实,正在逐渐成熟中。本文所阐述的多人共 享鑫羧溪实系统霞楚一令努布式纛按瑗实系绕豹楚擎霞墼。该系统戮客户辍,中 间件,服务器的形式为基础,实现了一个类似煅克战场的虚拟现实环境,在该系 统内,支持各用户棚飘的感知以及化身相互之间的交互。本文介绍了虚拟现实及 多人共事虚拟现实瓣斑鼹现状及发展,说明了v r m l 、j a v a 、m y s q l 笛语言及 工其豹背景和特点,阐述了基予纛攒现实多瘸户化身靛藩墅系统鹃系统缡擒及设 计思路,设计实现了服务端监控中心、多用户发送器、本地处理机和多阁户接收 器等备个功能模块及数据库连接,建立了一个比较完整的多人共享虚拟现实系 统。激麓,把该系统瓣毪链嚣絮枣奄与荬毽夔实瑷方法( j 2 嚣e 平台) 逡行魄较, 得出结论。 关键谰:虚拟现实,分布式战场,多用户共攀化身 南京邮电学院硕士研究生学位论文 a b s t r a c t v i r t u a lr e a l i t yi sas ”m e t i c a l l yc o i 啪u n i c a t i o n a lt c c h n o l o g yt h a ts p r i n g su p j u s t a tm ee n do f2 0 mc e r l t u r y w i mt h cr 印i dd e v e o p m e mo fn e t w o r kc o m m u n i c a t i o n a l t e c h n o l o g yo fc o m p u t e rs c i e n c e ,d i s m b u t e dv i r t u a lr e a l i t y ,w h i c hi sa ni d e ab a s e d o nd o m a i no fn e t w o r kv i r t l l a l r c a l i t y ,i sr i p p i n gu p 酽a d u a l l y t h em u l t i u s e r s h a r e dv i n u a lr e a l i t ys y s t e mi nt h i sw o r ki sas i m p l ep r o t o t y p e t h es y s t e mb a s e so n t h ea r c h i t e c t u r eo fc l i e n t 门m i d d l e w a r e s e r v e r ,a n di m p l e m e n t sp e r c e i v ea n di n t e r a c t 晰1e a c ho 血e ri nt 1 1 ev i r t u a l r e a l i t y e n v i r o n i n e n t t h i s p a p 钉i n t r o d u c e s t h e b a c k g r o u n da n dc h a n l c t e r i s t i c s o ft 1 1 e l a i l g u a g e s a 1 1 dt o o l so fv r ,v r m l ,j a v a , m y s q l ;a 1 1 a l y s i sm e c h a i l i s mo fh o w t oa c h i e v em u l t i u s e rs h a r e dv i m l a lr e a l i t y ; 肌ds t e pf m h e rr a i s et h ef a m e w o r ka l l dt h ed e s i g ni d e ao fm ep r o t o t y p es y s t e m b a s e do nv i n u a lr e a l i t ya v 栅o f m u l t i u s e r d e s i g n i n ga i l di m p l e m e n t i n gt h ea p p l i c a t i o ns e r v e r ,m u l t i u s e rd i s p a t c h e r ,1 0 c a l p r o c e s s o r ,m u l t i u s e rr e c e i v e ra n dt h eo t h c rm o d l l i e sa sw e l la st h ec o n n e c t i o nw i t h d a 诅b a s eb u i l d su par e l a t i v e l yi n t e g r a t e dm u l t i u s e rs h a r e dv i n u a lr e a l i t ys y s t e m f i n a l l y ,c o m p a r i n gt h ep e r f o m l a n c ed a t ao f t h es y s t e mw i t ho t h e ra r c h i t e c t u r e s ,w e c a ng e ts o m ec o n c l u s i o n s k e y - o r d 8 :v i r t u a lr e a l i t y ,d i s t r i b u t e dv i r t u a lb a m e f i e l d ,m u l t i u s e rs h a r e d a v a t a r 4 南京邮电学院硕士研究生学位论文 引言 虚拟现实是指利用计算机发展中的高科技手段构造出一个虚拟的境界中,使 参与者获得与现实一样的感觉。它生成的视觉环境是立体的、音效是立体的,人 机交互是和谐友好的,因此虚拟现实技术将人们陶醉在流连忘返的虚拟环境之 中。虚拟现实技术以三个i ,即i m m e r s i o n “身i 插其境”的沉浸感、i m e r a c t i o n 友 好亲切的人机交互性、i m a g i n a t i o n 发人想象的思维构想性,作为其本质的特点。 虚拟现实技术的应用领域和交叉领域非常广泛,几乎到了无所不包、无孔不入的 地步。 随着近年来计算机网络带宽和计算机硬件的迅速发展,原来基于客户机,服 务器架构的虚拟现实已经不能满足需要,而架构在网络虚拟现实领域的构想一分 布式虚拟现实,正在逐渐成熟中。 现在,在多用户共享虚拟场景领域,已有几家公司推出了自己虚拟社区及全 套的解决方案,如b l a ) ( x u n ,a d o b ea 廿n o s p h e r e g e o m e t r c k ,c v b e n o 啪, 0 u t e r w o r l d s , b e r k o m ,a c t i v e w o r l d s ,i c i t y ,p o i n t w o r l d s 等。它们除了提供虚 拟场景制作以外,还提供:服务器管理,通讯管理,用户管理等功能。目前在试 运行的系统主要有c y b e r t o w n ,它是目前世界上规模最大的虚拟社区,它有近2 0 0 个虚拟场景。他们用的解决方案都各有不同,在实现方案的时候不完全遵照标准, 往往为了加入更多的功能而加入自己的内容和开发包。总的来说,呈现百花争鸣 的局面,试图在统一的w e b 3 d 标准出来之前成为事实标准。 本文所阐述的多人共享虚拟现实战场环境便是一个分布式虚拟现实系统的 简单原型。我们设计该系统原型的目的,是构造了一个可复用的、弹性的多用户 大型虚拟平台,尽量减轻场景模型建立者的设计和维护负担,可以使用户可以在 该虚拟平台上与虚拟环境交互,与周围的用户交互,力求构造一个三维的虚拟交 互平台,可以用在战场训练,娱乐,数字化城市,或者网络三维游戏上面。在该 系统的实现和架构上,以浏览器中间件服务器为基础,实现了一个分布式坦克 战场的虚拟现实环境,各用户相互感知以及化身交互的系统。 在实现的过程中,我们主要做了以下的工作,构建了一个基于消息和事件同 步的分布式多用户虚拟战场环境: 1 对原型系统需求和模块进行分析和划分。 2 规划多用户间的通信机制,制定多用户间的通信协议。 3 研究v r m l 环境外部的扩展编程接口,采用相应的接口实现v r 世界与外界 南京邮电学院磺士研究生学位论文 的数据和信息交换。 4 对场景和用户状态进行统一的数据艨管理,弹性的按照用户需求动态生成所 霭数据黟搦暴。 5 对动态场景的生成谶行深入的研究,提出一种w 行的模式减少建模和管理维 护的负搬,增加系统弹性。 6 采矮分谍式三屡结稳,送一步减,l 、中心服务器瓣受疆,往纯系统性能。荠浆 用心跳探测机制( 详见4 2 3 注册机端) 初步实现分布式系统的负载均衡和连 接分配问题。提高大规模系统的实用性和健壮性。 7 在穰块实凌孛,对餐缝实俸扩震麓戆迸行磋交,逐送一步考虑了分舞式系统 中系统岛用户间的交慝,实行在线帮助,指导和智能对战等功能。 总而言之,本文介绍了虚拟现实及多入共享虚拟现实的应用现状及发展,说 翡了v r 狱l 、j 晷v a 、麓y s q 己等语富及王其魏譬最秘特点,缝会这鍪工吴,溪逐 了基于虚拟现实多用户化身的原型系统的系统结构及设计思路,井设计了一个虚 拟战场环境的原型系统,实现了注腿服务器端( 中间件) ,应用服务器端、多用 户发送器、零遗处理枧和多用户接收嚣等各个功能模块、数据瘴建模和数据黪逢 按,扩藤鬻黥代理模块 该物体是一个圆 a p p e a r a i l c ea p p e 缸a n c e 饿用缺省外表 m a t e r i a ld e f s p h e r e c o l o r lm a t e r i a l d i f s e c o l 。fo lo 绿色材霞 ) j d e fs e t c o l o rs c r i p t 谳”s e t c o l o r 。e l a s s ”设置事传处理的类 2 0 毒隶鄄逛学院磺士研究生学短论文 e v e n t i ns f b 0 0 l o n c l i c k l 该事件的入事件是o n c l i c k i e v e n o u ts f c o l o rn e w e o l o r 出事件是n e w c 0 1 0 r 矗e l ds f 转o o lo nf a l s 嚣 ) r o u t es w i 专c h l 。i s a e 童i v e 罩0s e t c o l 甜。o 矬e l 量c k l 如果组s 埘t c h l 被用户激活则发o n c l i c k l 出事件 2 。2 多人共事虚报现实 2 2 1 概念 目前康拟现实技术系统的未来趋贽为单机桌面釉互联网两种主要方式。避几 十年来,计算机、通讯技术的同步发臌和相互促进成为全世界信息技术与产业飞 速发展熬未簇特薤,特剩怒瓣络技术熬邈速辗起,嫒褥售患应弱系统在深度秘广 度上发生了本质性的变化。多人共享廉撤现实于是成为网络与艘拟现实相结合的 产物。 多久共攀虚接现实( m 试t i i u s e rs 如撑dv i n u 越r e a l 姆) 撂静就是龆入了分蠢 式多人协僚c s c w ( c o 獭p u t e fs u p p o r t e 硅c o o p e f a t i v ew o r k ) 悉怒豹网络虚搬现 实,让用户以化身( a va _ t a r 虚拟空间嫩用来代表人的图像或者三维图像) 的方式 参与到一个廉拟境界中,每个化身的存在都能被其他用户感知,并且他们之间能 够棰互影鹃鞫交滚,帮鹰镶交互。多两户菇享虚援壤实歪在广泛黪被瘦爱裂零豢, 工业制造等团队训练中,系统设计和多用户游戏等方面。在网络虚拟现实领域, 多用户v r m l 世界可咀使场景内的用户共享一个幼态的三维虚拟场景,用户与 场景的交蠢以及对v ;凇l 夔巽豹动悉更凝都可以及时反映到掰宥共享用户熟视 艰中。 加入了虚拟现实的网络与传统的二维空间有了质的飞跃,概括起来有以下特 点: 1 给用户3 d 立体静虚拟境界; 2 给用户篇一人称的感觉和实时任意活动的自由; 3 。秀户霹叛逶过一些撩秘装量窝手羧实鞋操缀彝羧变辑签懿纛羧境雾; 嘉豪邮电学麟磷士研究生拳位论文 可以预见,结合了多用户环境之厝的网络虚拟现实,是一种真芷意义上的对 现实、对我们这个社会群体的模拟,能将显露出它版大的魅力和无限的前景。 餐是,大多数三维安然著不是巍了多震产v 嬲毛整赛设嚣熬。v 蹦l 实传 非协作一感知元素( c o l l a b o r a t i o n u n a w a r e ) ,他们本身并不支持潜在的协作功能 的,但是我们可以通过挫方法来实现它。 2 2 2 多入共享虚拟现实酶实现梳潮方案探讨 实现的翻豹很麓单,个是多入场景的共享,一个是用户移为共享的机制。 1 分布式v r m l 场景描谯 这蔫蘩程鞭务器土设诗客户接收援净,每令客户溺入场景与之联系,随嚣客 户接收程序为每个客户黛记并派送v m l 场景的描述丈件。这个机制保证了每 个用户对场景的动态更新及时地反映剐每一个加入这个共享场景地客户端浏览 器。 2 分布式用户行为共事 交予v 心嫒己毽爨熬状态交蘧是蘩予事转簸发瓣,嚣魏,矮户翡行尧共誉楚 实现整个三维虚拟场景欺享的关键。弓l 发v r m l 世界变化的愚用户行为,簪f 发 的结果则娥v r m l 世界状态变化。从用户行为和v m l 世界的状态出发,我们 尝试两种实现共享的方法。 ( 1 ) 基予状态的共享方式: 这种方式不关心引发场景变化的攀件源,只是将共享场景的状态不问断的发 送绘各个共事瘸户,使撼个共享躅户本地豹场景怒最耨豹状态,瓢霭达到整个场 景的同步。 这种方式商两个好处: 镬瑟鸯参与者都探溅了嗣步; 新登记用户也很容翁地得到最新的场景数据。 但是也有墩的缺点: 数据传输慧太大。缭护动态更新的数据量甚至怒迸了对整今三维场景兹裙始纯 鬻豪邮电学院蟥士研究生学位谂文 数据量。 ( 2 ) 。基于事件姻共享方式 基予事件静共享方式蹩剩用了v 蹦l 基于豢件驱穑懿交燕桩毒l 。所鸯 v r m l 世界的动态更新搿件源都是用户行为( 诸如用户在场景中的位移变化, 学习者通过鼠标点击了物体的某个操作按钮等等) 。这些初始潦件触发了改变 v 蒯l 整赛状态戆睾孬肉耋事转。溜憩,一令更蠢效遮实瑷荚窜蘧方式裁怒莛 享对3 d 实体的交互行为,只需要将弓l 发三维场景变化的事件源通过v 蹦l 的 执行模式传递到各个共享者的本地场景中,就可以产生和引发源三维世界中的初 始效果。因霹露这静方式稔作行巍共享竣输入共享,它焚享的使三维场景的输入信 弩,两菲接受了输入信号露豹三维场聚状态。这耱方式由于涉及潮瓣数器量禳,l 、, 因而所需的带宽有限。 优点: 传输数据量小。 带浇损耗小。 袋熹: 同步实现有困难。 后期如入共享者维护工作难。 我们稻下面两幅圈袭示两耱共事方式静实褒税翻。左匿表示的是状态共摩穰 制,源场景的状态不停的送往各个客户本地。右图浅示的是输入共享,只需翳拭 享较少的数据量。 闰2 2 两种按掌方式的实现机制 2 3 南京邮电学院硕士研究生学位论文 2 2 3 多人共享实现思想和关键技术 1 外部程序接口e a i ( e x 把m a ia u 曲o r i n gi n 协一j a c e ) 在v 刚l 中,节点是构成虚拟场景的基本单元。节点由字段和事件组成, 字段的取值决定了节点的取值,从而决定了虚拟场景的当前状态。事件包括 e v e n t i n ( 入事件) 、e v e n t o u t ( 出事件) 以及e x p o s e df i e l d ( 外露域) 的一对隐 含的事件入口( s e t x x x ) 和事件出口( x ) ( 】( c 1 a n g e d ) ,事件为节点提供了接受外 界如外部程序j a v aa p p l e t 的消息以及向外界发送消息的能力,通过事件可以动 态改变虚拟场景的状态。 v r m l 文件描述的虚拟场景需要经过带有v r m l 插件浏览器的解释,才能 呈现给观察者。而v 蹦l 的e a i ( 外部程序接口) 是一个与v 蹦l 插件关联的j a v a 包,它允许一个j a v aa p p l e t 以四种方式访问v 蹦l 中的场景: ( 1 1 访问浏览器脚本接口( b r o w s e rs c r i p ti n t e r f a c e ) ; ( 2 ) 发送事件给场景中存在节点的e v e n t i n ; ( 3 ) 读取场景中节点的e v e m o u t 最后送出的值; ( 4 ) 监听场景中节点的e v e n t o u t 事件。 无论哪种类型的访问,e a i 都要事先取得欲访问节点在系统中的地址。对于 j a v aa p p l e t 程序来说就是取得节点的索引。在v r m l 中,任何一个节点都可以 用d e f 结构命名。被命名的节点被称为a c c e s s i b l e 节点,只有被d e f 结构命名 的程序才能被外部的e a i 通过调用相应的方法取得入口地址。e a i 同时还提供了 一些方法,进一步获取该节e v e n t o u t 和e v e n t i n 的地址入口,而且在获取这些地 址入口之后,还可以用另外一些e a i 方法对这些e v e n t i n 和e v e m o u t 进行访问。 2 v r m l 与a p p i e t 的接口 e a i 允许嵌入在同一w e b 页上的a p p l e t 程序和v r m l 场景进行通信。建立 j a v aa p p l e t 和v i 洲l 场景的通信,首先要获得一个浏览器类( b r o w s ec l a s s ) 的 实例。浏览器类是对v m l 场景的一个j a v a 封装。它不仅包括全部的浏览器脚本 语言接口,还包含有s e t n o d c 0 方法,该方法使用一个用d e f 结构命名的名字作 为参数,返回一个n o d e 类的实例。这个实例就是v r m l 场景中节点在j a v a a p p l e t 南京邮电学院硕士研究生孥证论文 中的对应体。如果猩v r m l 文件中一个d e f 命名的节点通过u s e 结构多次出 瑗数袈瑷多令对象,剐只有最爱个对象是渡谤闰的。 ( 1 ) 访问节点 当一个节点的实例通过浏览器类的g e t n o d c ( ) 方法获得以后,这个节点的 e v e 斌矬帮e 谨嫩0 毽t 後霹蔽被访弱了。n 。& 类提供了g e | 嚣v e n t l 鑫) 窝霉。蠖v e 建t o u t 方法。把被访问节点的c v e m i n 或者是e v e m o u t 域名当作字符串参数传入,返回 e v e n t i n 或者是e v e n t o u t 类的实例。这两个实例就是目标节点e v e m i n 和e v e n t o u t 域在a 辨l 娃中酚对痰体。e x p o 刚f i e l d 也可以访闺,作为事转入口时,农域名蘸 鸯疆“s e l ”前缀;俸失事 串密邂辩要在蠛名麓鸯曩“_ c h a n g 。d ”后缀。 ( 2 ) 往e v e m i n 发送攀件 褒凝褥一个被谤阕节点懿嚣v 黼畦珏类实掺l 嚣,裁可戬满该节点发送豢 串。毽 是e v e n t i n 是j a v a 钧抽象类,没肖提供发送攀 牛的方法,必须先把它强制转换成 相应的e v e m i n 类的予类,如e v e n t i n s f r o 诅t i o n 、e v e n t i n s f v e c 3 f 等。这些子类 具有发送相应类型攀 牛能力。 3 ) 访输出节点的e w n t o m 域 猩取得一个被访问节点的e v e n t o u t 类实例后允许进行两种操作:获取目标 节点e v e n t o 啦域的搬藏篷;在e w n t 。u t 域发遴摹俘时设置一个c a h b a c l ( o 方法。 e v e n 妁u t 类龟是一个抽象类,没露毽含获取e v e n o u t 兰蓊蘸靛方法,必缳将萁子 类化,使其拥有恰嬲的方法。 ( 4 ) 鼗孵场景内节点蛉e v e n t o u t 域 e a i 提供了一种监听枫铡,每当目标节点豹e v e n t o u t 域有薪的值产生时, a p p l e t 能自动调用一个方法来处理。这种机制用接口e v o n t o u t o b s e r v e r 和类 e v e n t o u t 的a d v i s e ( ) 方法来实现。e v e n t o u t o b s o r v e r 首先必须子类化,谯子类中 实溪方法e 蘸强a c k ) 然嚣嚣霜醚v i s e ) 方法辩该子类与簧羧骖节点豹e v e 珏 o 啦 挂接。这样,当目标节点的e v e n t o u t 事件有输出时,e v e n t o u t o b s e r v e r 子类的 c a l l b a c k ( 1 方法就会自动执行。 南京邮电学院硕士研究生学位论文 2 3m y s q l 数据库 2 3 1m y s q l 的数据类型 m y s q l 字段支持大量数据类型。通常的整数、浮点数、字符串和数字均以 多种长度表示,并支持变长的b l o b ( b i n a r yl a r g eo b j e c t ) 类型。对整数字段 由自动增量选项,日期时间字段也能很好的表示。 m y s q l 与大多数其他数据库系统不同的是提供两个相对不常用的字段类 型:e n u m 和s e t 。e n u m 是一个枚举类型,非常类适于p a s c a l 语言的枚举类 型,它允许程序员看到类似于r e d 、g r e e n 、f b l u e 的字段值,而m y s q l 只将这些 值存储为一个字节。s e t 也是从p 船c a l 借用的,它也是一个枚举类型,但一个单 独字段一次可存储多个值,这种存储多个枚举值的能力也许不会给你一些印象 ( 并可能威胁第三范式定义) ,但正确使用s e t 和c o n t a i n s 关键字可以省去 很多的表连接,能获得很好的性能提高。 2 3 2 与s q l 的兼容性 m y s q l 支持绝大多数的s q l 特性,而且它的l i n l l x 是免费的,这是我们选 择它的主要原因。包含一些与s q l 标准不同的转变,他们的大多数被设计成是 对s q l 语言脚本语言的不足的一种补偿。然而,另一些扩展确实使m y s q l 与众 不同,例如,l i n k 子旬搜索是自动地忽略大小写的。m y s q l 也允许用户自定义 的s q l 函数,换句话说,一个程序员可以编写一个函数然后集成到m y s q l 中, 并且其表现的与任何基本函数如s u m ( ) 或a v g ( ) 没有什么不同。函数必须被编 译道一个共享库文件中( s 0 文件) ,然后用一个l o a df u n c t i o n 命令装载。 m y s q l 在l i n u x 世界里找到一个位置一提供简洁和速度,同时仍然提供足 够的功能使程序员高兴。数据库程序员将喜欢其查询功能和广泛的客户库,数据 库管理员会觉得系统缺乏主要数据库功能,我们会发觉它对简单数据库( 在不能 保证购买大型数据库时) 是有价值的。 2 3 3 选择m y s q l 做数据库的原因 m y s q l 是一个广受l i n u x 社区人们喜爱的半商业的数据库。我们选择使用 南京邮电学院硕士研究生学位论文 m y s q l 主要基于以下原因: 1 平台无关性。m y s q l 是可运行在大多数的l i n u x 平台( i 3 8 6 ,s p a r c ,e t c ) 和 w i n d o w s 平台,与平台无关。 2 m y s q l 数据库面向的对象是中小型的应用,但是它的数据处理能力足以应付 原型系统的设计和实现。 3 m y s q l 支持s q l 查询,j d b c 驱动,而且m y s q l 的驱动程序也容易获得。 4 数据库兼容性。由于m y s q l 采用的s q l 查询与标准查询相差无几,我们也很 容易就可以转用其他的商业数据库比如s q ls e e r ,o m c l e ,s y b a s e 上。 5 m y s q l 是半商业数据库,在l i n u x 下面是免费的。 6 原型系统对数据库的事务处理能力,在线分析和处理能力暂时要求还不高, m y s q l 足以应付。 南京邮电学院硕士研究生学位论文 第三章分布式战场环境的需求和分析 3 1 定义和目标 在传统上,各个国家通过实战演习来训练战士和研究战术,但这种实战军事 演习将耗费大量的人力物力,安全性和保密性比较差。今年来,和平与发展已经 成为当今世界社会发展的主流,因此,各国开始逐步裁剪军费,从而使得军事演 习在概念和方法上都有了一个新的认识和飞跃,即随着计算机网络技术的迅速发 展,特别是虚拟现实技术的逐步应用,可以通过建立虚拟战场环境来检验和评估 武器系统的性能和军队的作战能力。由于经费和政治因素的制约,采用仿真的手 段进行战役演练是平时军事训练较为理想的手段。 3 1 1 虚拟战场 如何采用高科技手段提高模拟训练水平,已经成为各国军队普遍关注的问题 和焦点,虚拟战场( v b ,v i n l l a lb 甜l e f i e l d ) 则是其中的主要手段。目前,基于 网络的计算机协同工作( c s c w ) 已经成为近年来重要的研究课题,在军事上各 国纷纷提出立体合成战役演习和数字化战场的概念,大规模的多武器平台的仿真 和虚拟训练环境的需求日益增加,而这种多武器平台的综合环境只有通过v r 技 术和网络技术才能实现。因此,我们认为可以通过综合采用w w w + d v r ( d i s t r i b u t e dv i r t u a lr e a l i t y ) 技术来实现立体合成战役演习中虚拟战场环境的综 合仿真。 在虚拟战场环境中,武器平台( 包括士兵、坦克、装甲车、歼击机、直升机、 导弹、战舰、航母等) 分别属于红方和蓝方。这些武器平台由分布在不同地区的 模拟器实现,通过广域网或者局域网连接通信。武器平台仿真器有两种形式: 1 在回路中的模拟系统,如坦克模拟器,分析模拟器; 2 计算机生成兵力( c c f ) ,由数学模型和软件实现,是由虚拟的人( 人 工智能决策) 操作虚拟的武器平台。 美国海军开发的“虚拟舰艇作战指挥中心”已经投入使用,其坦克训练模拟系 统已经用于营级训练( 1 0 0 0 个对象) 。 采用虚拟现实和计算机网络技术进行虚拟战役演习具有如下优点: 南京邮电学院硕士研究生学位论文 1 以实际敌人目标作为虚拟战役演习对象,目的性,针对性极强; 2 演习环境较为逼真,具有较好的实战效果; 3 系统可以重复多次使用,费用低。 4 有利于专业人员学习训练和培训提高,现代战争中高素质的部队就 是在平时训练中培养出来的。 3 1 2 目标 1 表示方式 根据上述分析,虚拟战场系统在立体合成战役演习训练中具有广泛的前途, 演习主要内容要表示为适合处理的信息,其中的表示方式如下: 1 客体信息( e n t i t yi n f o m a t i o n ) :虚拟战场环境中包括虚拟仿真客体。所谓的虚 拟仿真客体就是指系统所作用的虚拟对象,例如坦克,战斗机,导弹,炮弹,舰 艇等。客体信息包括客体的地理位置,方位,姿态,加速度,甚至动力学特性, 可见光数据特性,声纳特性等。 2 客体交互作用( e n t i t yi n t e r a c t i o n ) :他包括武器发射的交互作用,客体间的碰 撞,维修和再补给的后勤支援信息,更新速率控制等。 3 环境信息( e n v i m m e n ti n f o r n l a t i o n ) :他包括地形地貌,气象条件,光照等的 仿真,以及动态地形中的流体表示。 2 需要具备的要素 分布式战场环境至少需要做到以下几个方面,才能算是一个成熟和具有扩展 性的系统: 1 统一而简单的前端客户端。客户端易于管理和升级和使用,把所有的战场环境 控制都放在后台,用户便于控制。 2 支持大量的用户同时在线。虚拟战场是军团与军团之间的作战模拟,所以数据 量和通信量都非常巨大,需要弹性而成熟的系统架构支撑。 3 战场渲染单元,战场数据存储,战场的控制三者分开。这种设计使得系统的构 架清晰,采用视图控制,显示和模型分离( 即m v c 模式) ,便于大场景和大工 南京邮电学院硕士研究生学位论文 程的维护和开发。 4 数据统一存储,符合b o y c e c o d d 范式( b c n f ) 及a c i d 原则。作战单元从这 些服务器中读取相应的敌军部队位置,数量,火力信息,使系统的开发和维护代 价较小,数据管理有章可询。 5 场景准实时计算生成。每个作战单元看到战场环境通过数据库实时生成,作战 单元可以参加战斗,发射炮弹等动作,消灭敌军有生力量。 6 提供全局接口。作战环境的全局数据通过战场控制室模拟显示,而且作战单元 在虚拟战场的行为被记录下来,供总结和复习使用。 7 集团控制。提供对作战单元的集团指令发布和控制,实现战斗单元间的通信系 统。 3 2 分布式虚拟现实战场环境的体系机构 战场环境是一个允许多人参与的大场景,所以要采用灵活而弹性的机制保证 服务器端的可靠性和负载均衡。而且,整个场景数据的建模要求有统一而简单的 导入导出接口,以便其他程序实行互联互通,比如说支持从易于获取的c a d 地形 数据到虚拟战场的转换;动态的加入场景和兵力的功能,都是我们考虑的内容。 3 2 1 体系结构的选择 经过对上述定义和目标的分析,采用三层的体系结构来完成,如下图所示: 1 客户端采用标准而熟悉的i e 浏览器,场景渲染由i e 的第三方v r m l 插件执行。 2 数据存储在分布式的m y s q l 数据库里,通过统一的s q l 语句查询和更新,按 照一定的规则分散存储整个大战场环境数据。 3 场景数据通过标准s o c k e t 连接注册服务器交互,分配得到服务器集群中的服务 器资源,通过该服务器和数据库交互,取得场景数据实时生成。 4 注册服务器和应用服务器集群之间有一定的交互和通信,以便注册服务器控制 整个系统任务的负载和均衡。 南京邮电学院硕士研究生学位论文 沣瀚暇务器 图3 1 系统组成和结构图 3 。2 2 虞荔l 现实战场环境模块划分 为了达到分布式战场环境的需求,我们需瑟做到三点: l 。客户梳注瑟瓿稍:给每个客户狡谈涯窝注麓,分配葙盛豹簸务器。 2 服务器端的分布斌:一旦客户取得服务器登渌权限的i p 和端口,就可以连接 指定的服务器。 3 视聚数据按照纛揪场景静遣域设努块,敌农不同的褫豢数据库内。 4 服务器根据客户端的需求,在不同的视景数据库里操作相应的数据。 南京郎氟学院矮士磺究生学位论文 第四章分布式战场环境模块设计与实现 4 ,唾分布式战场场景数据的建立 霾4 。 分蠢式战场场豢数据懿建立 4 1 1 静态场景建模 一般有下面几个察现静态场景的方法: 1 几何建模:三维造型和外观。可用一些外部的程序来生成符合v r m l 规范的 戆态足舞模型。篦鲡主文提到熬3 d m 积,l s 转等可视化王曩,也可以嶷接通过 s i t e p a d 等工具直接书写代码。 2 运动建模:物理位置,碰撞梭测。主要利用通过v i 洲l 支持的碰撞梭测节点, 可以开癌鑫动磁攮梭测识别,也霹鼓手工指定磁撞检测鲶藏围。 3 物理建模:物体的重量,质徽,惯性,表箍纹理的租糙程度,变形模式等。 用相威的工具建模以后导出,或者用s c r i p t 结合模型的特点编写实现其特征。 南京部豫学院硕士礤究生学挂论文 4 1 2 动态场景建模 1 s c r i p t 和e a l 动觳篱理虚拟稿体( 生成,删除和修改) j a v a s c 印t 或遥过烫览器嚣a l ( e x 据m a la 鼬o r i n 窖王n t e r f i k e ) 文释编码实现 场景动态建模。所谓的动态场景,一是指场景的物体可以动恣创建和删除,二是 指场景属性的改变。 ( 1 ) 动态静翅建稷秘酴场景物体。 e a i 提供相应的接口函数来创建、删除节点和路由,如下所示; g e w o r l d u r l ( ) 该方法返回当前场景的根目录。 c t e a t e v r m l f r o m s t r i n 烈s f s 硒n gv m l l s y i l t a x ) 该方法解释一个毯食v 雕l 语匈瓣字符串,纛立p r o t 0 藕e x t 毯斟p r o 下0 说明和路由,并返阐一个包含缀节点的m f n o d e 节点。这个方法是动态对象 生成中经常用到的方法,当通过这个方法创建了一个新的节点后,就可以把这个 节点热入熨场景孛去了。 a d d r o u t e ( ) a n dd e i e t e r o u t e ( ) 上述两个方法分别猩蛤定的节点名和事件名之间加上或者减去一条路由。 ( 2 ) 动态辏体的黛成数据存放教数据痒里嚣,凳场景数爨窝场景显示分离。我 们可以以三维地理对象模型建立为例说明如何建造动态的物体。 程地理景观系统中,地理对浆根据空间的分布特性,可分为二大类:一类是 良连续交俸为基秣熬霹蒙,魏逮澎、壤群类分毒等,这爽对象在窆阕主连续分 布,称为地形景观对象;另一类鼹以离散实体为特性的对象,如建筑物、树、电 话亭、路灯等,这擞对象以独立的个体而存程,称为地理对象。 恁形景蕊瓣三缭咒舞空润数撵是三维逮壤毽赛豹墓甏墨数据,芳显冀丈鼗器量 ( 如大量的三角形数或栅格单元数) 是三维地形景观实时图形处理的瓶颈。所以, 地形煅观对象的建模是虚拟战场建立的一个关键部分。在本文中,我们采用不同 层次( 不同分辨辜) 靛凡何和麟 生数据表达撼形录观对象,靼用不同三角形个数 的三角阙表达堍澎荣耀对象静举两层次静a 侮分辨率,怒不凌大小静纹理踅豫 表达祸性分辨率。 南京邮电学院硕士研究生学位论文 对于离散的地理对象,一般可用c a d 模型、分形模型、人工生命技术等三 维处理与表达,然后,根据地理对象在实际的地理位置坐标、地理实际大小、地 理对象朝向和纹理结构等,建立可构成虚拟战场的三维地理对象库。虚拟战场环 境物对象从存在角度看,有两类:一类是目前存在的地理对象;另一类是系统运 行时是由用户加入的,但现实中未存在的物体。这两类地理对象,在数据库对象 管理时应区别对待。离散实体地理对象一般数目很多,所以,为了实现快速的图 形计算与显示,也必须应用多层次表达法建立每一个对象的多层次空间与属性模 型。 复杂物体例如地形节点的表示,我们把数据存放在数据库,需要生成该环境 的时候才动态生成。 g e o e 仃ye l c v a t i o n g r i d x d i m c n s i o n 6 4 # 指定网格高度阵列在x 方向的单元数目 x s p a c i n gl # x 方向的顶点间距离 z d i m e n s i o n6 4 # 指定网格高度阵列在z 方向的单元数目 z s a p c i n g1 # z 方向的顶点间距离 s o l i df a l s e c r e a s e a n 9 1 e3 h e i 曲t 】社大量的数据 ) 可以把这大量的数据放在数据库里统一存储,必要时通过相应的函数 c r e a t e v r n l l f m m s t r i n g ( ) 组合该数据动态生成。 2 区分服务( d i f r s ) ,按照需求显示动态场景 对于单个用户来讲,没有必要载入全部的战场场景细节,我们应该根据其位 置和要求而定。而且,用户的客户机配置也不一样,如果要有流畅和良好的性能, 就应该按照客户的要求来传送不同细节级别的场景数据。区分应该显示的细节, 近的物体用细节表示,远的场景只需要用粗糙的模型或者布告板( 一种极端模型 表示方式,用贴图方式来表现不关心的物体) 来显示即可。v 蹦l 世界是根据 南京邮电学院硕士研究生学位论文 用户的参数选择要求,由三维地理对象模型转换形成的。由于三维地理对象模型 的建立,考虑了用户( 观察者) 的不同需求以及实际应用效果,所以,用户可根 据网络传输速率和用户计算机处理能力,提出自己的要求,选择特定的参数,例 如,可以选择实时地观察v r m l 世界,但是三维世界的空间分辨率和属性分辨 率较低;用户也可以选择较高的空间、属性分辨率,但处理速度较慢等。我们用 不同层次( 不同分辨率) 的几何和属性数据表达对象,按照用户要求的分辨率组 织数据,再发送到用户端。 ( 1 ) 虚拟场景空间分割,每个子区域都是一个规整的长方体。 ( 2 ) 某个数据库服务器保存某一个区域的场景数据。 数据服务器4 数据瑕务器5 图4 2 场景数据分区保存 ( 3 ) 客户端动态计算应该显示的范围 在客户端为半径划一个方格( 或者圆) ,服务器只向相关数据库提交关于这 个方格范围内的查询请求。数据库查询返回后,再由服务器整理返回客户端a 3 后台服务器设计与分类 服务器端包括应用程序服务器和数据库服务器。而应用程序服务器包括 v i 洲l 世界生成服务器、数据处理和分析服务器和多用户管理服务器等。 v r m l 世界生成服务器:该服务器在接到用户的请求后,根据显示范围大小 南京邮电学院硕士研究生学位论文 要求的空间分辨率、属性分辨率,显示范围内地理目标的选择等参数,动态地与 数据库服务器连接,并把相应的地理对象数据取出并转换成v r m l 世界模型,供 用户浏览与交互。 数据处理和分析服务器:该服务器执行地理对象的查询、增加删除编辑后 的地理对象管理和地理空间计算与分析( 如视域计算、最短距离分析) 等。 数据库服务器是用于管理虚拟场景三维地理对象和与多用户有关的数据,一 般可用符合s q l 和j d b c 标准的数据库作服务器。 多用户管理服务器,用于专门管理在线用户的相关信息,如用户名、三维化 身类型与地址、三维化身在虚拟场景的位置和朝向以及用户间的通信数据发送等 等。 4 1 3 交互大型场景动态实现的关键技术 1 由小的场景级联成大场景 整个虚拟世界的场景可以用场景图来树形图表示,如图所示: 图4 3v r m l 世界的场景层次图 每个节点都可以看作父节点,该节点下面可以级联任意层次的子节点,所以 大的虚拟世界场景一般采用内联( i n l i n e ) 方法把大的场景按照一定的规则分成 很多个小场景。 2 大型场景的模型优化 采用l o d ( l “e lo fd e t a i l ) 技术优化系统性能。从用户的角度来看,消除 南京邮电学院硕士研究生学位论文 一些距离用户很远以曩于没有必要展示其细节的实体是很有必要的。根据用户的 援爨爨装,呈瑗密零弱熬缨节,饶纯系统拜销。麴惩户站在较远戆经萋番拣大 楼,可阻用一个比较糨糙的模登,简化系统的波染工作量;如果用户转移到更近 的位置观看,由系统自动切换成较细致的模型。 3 。霹¥建海重羧豢黪探讨 所谓海量数据,在计算机技术发展的不同阶段存在不同的范围划分,往往在 一拿除羧坡豫舞海豢豹数握,在经过一定发袋瓣赣鞋蓐,缀姥裁会变成炙足轻 重的数爨级。在v r 讨论的范围嫩面,海量数攥不外乎来自两个方面,一个是几 何造型的复杂( 三角型和面片的书目庞大) ,另一个是纹理材质的庞大。 毒对海纛遣鍪薮嚣瓣缒蓬一一n 瓣r 8 s 袭1 8 歉 n u r b s 曲磷薅模和基于豳像的建模与绘制( i m a g eb a s e dm o d e l i n g & & 确藤藏g ) 已经残必豫了蔻德建模汉雏,对3 d 建摸袁力瓣李 充。 ( 1 ) n u r b s 一曲面建模 n u r b s 是n o n u n i f o 鼬r a t i o n a lb s p l i n e s ( 非均匀脊瑗b 样条曲线) 的缩 写,它缝粹蹩诗葵糗强影学豹令数学壤念。n u r b s 建壤技术是最遥4 年来最 主要的建模方法之一,特别适合于创建光滑的、复杂的模型,而且在应用的广泛 性和模型的细节逼舆性方面具脊蕻他技术无可比拟的优势。n u r b s 融经成为 v r m l 驰标准,蠢越来越多的鬻渡产品工具支持它。每个n u r b s 物体都可以用 数学袭迭式来定义,在一个或更多的点之阕戳癌插值替换。在三维空间黧,给定 ( + 1 ) ( 坍十1 ) 个点,用向量p ,表示( f _ l ,2 ,h ;= 1 ,2 ,m ) ,称为n m 次b 样条 夔瑟: 尸( ”) = 岛( “) 。( v ) o 蔓”s 1 p o ,= 0 弓怒p ( 甜,v ) 豹控制顶点,f j n ( u ) 和国为b 徉条基丞数,其俸表示为; f m 妒去静蠛融一h ) “ 南京邮电学院硕士研究生学位论文 = 去蒸h ) “v + 朋一f 一妁“ 如果用一系列酋【线段将相邻的点r ,只”,p 。( _ l ,2 。, ) 和p o ,只,厶 ( 歹= l ,2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大数据产业园区场地厂房租赁与数据分析服务合同
- 会计师事务所合伙人聘用合同
- 餐饮品牌连锁店区域经营权转让合同
- 彩钢房加工、定制、安装、售后一站式服务合同
- 股权投资财务担保服务合同
- 拆除工程现场保护协议书
- 餐饮股东合作协议范本:股权激励与员工持股计划
- 百货商场商品退货换货服务合同范本
- 白细胞减少症诊疗规范
- 发热护理说课
- 2025年网络与信息安全法律知识考试试题及答案
- T/CIMA 0044-2023蓝藻密度在线监测仪
- 货物实时监控系统行业跨境出海项目商业计划书
- 四川省遂宁市射洪市射洪中学校2024-2025学年七年级下学期5月期中语文试题(含答案)
- 如何做质量管理
- 2025年中国小麦高筋粉市场调查研究报告
- 2024年全球及中国电动宽体矿卡行业头部企业市场占有率及排名调研报告
- 2025年初级人工智能训练师(五级)资格理论考试题库(含答案)
- 居间合同代持协议
- 三级安全教育试题(公司级、部门级、班组级)
- DZ∕T 0214-2020 矿产地质勘查规范 铜、铅、锌、银、镍、钼(正式版)
评论
0/150
提交评论