




已阅读5页,还剩69页未读, 继续免费阅读
(计算机软件与理论专业论文)基于java3d和vrml的数字校园系统.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 虚拟现实建模语言v r m l 是应用最为广泛的三维场景描述语言,但它仅是 一种描述语言,缺乏复杂行为及交互的编程支持。j a v a 3 d 的功能和可编程性更 强,有丰富的j a v a 类库的支持,能够导入多种格式的图形文件,和v r m l 相比, 在对于三维虚拟场景的动态控制方面更易实现。 虚拟校园系统的开发目的:一是方便学生、教工、学校管理人员之间的交流 与沟通;二是使数字校园更加完善,通过逼真的网上三维虚拟校园让人们以更加 直观的方式了解学校。 本论文对v r m l 、j a v a 3 d 等工具和虚拟环境体系进行了分析,并提出了构建 可交互性较强的虚拟校园系统的实现方案,突破了单纯采用v r m l 或j a v a 3 d 的 局限性。除了模型的复杂度和美观性需要提高之外,其他方面( 如系统功能的实 现,用户行为的交互) 都比较理想。这论证了基于v r m l 和j a v a 3 d 技术建立虚 拟校园系统的可行性。 关键字:虚拟现实,v r m l ,j a v a 3 d ,虚拟校园 a b s t r a c t v i r t u aj r e a l i t ym o d e l l i n gj a n g u a q e ( v r m l ) i st h r e e - d i m e n s i o n a j s c e n ed e s c r i p t i o ni a n g u a g ew h i c hi sa p p l i e di nt h em o s tw i d e s p r e a d a s p e c t b u ti ti sm e r e l yo n ek i n do fd e s c r i p t i o ni a n g u a g e ,i a c k so ft h e c o m p l e xb e h a v i o ra n dt h es u p p o r to fi n t e r a c t i v ep r o g r a m m i n g t h e j a v a 3 d ,sf u n c t i o na n dp r o g r a m m a b l ei ss t r o n g e r , f o rw h i c hh a si o t so f j a v ac l a s si i b r a w ss u p p o r t ,a n dc a ni m p o r tm a n yk i n d so fg r a p h i cf i l e s b e i n gc o m p a r e dw i t hv r m l ,i ti sm o r ee a s i l yf o rj a v a 3 di m p l e m e n t s t h ed y n a m i cc o n t r o io ft h r e ed i m e n s i o n a iv i r t u a ls c e n e v i r t u a ic a m p u ss y s t e md e v e l o p m e n tg o a l sa r e :f i r s t ,i tp r o v i d e s c o n v e n i e n to fe x c h a n g ea n dc o m m u n i c a t i o nf o rs t u d e n t s ,t e a c h e r s a n da d m i n i s t r a t i o ns t a 仟;s e c o n d ,i tc a u s e st h ed i g i t a ic a m p u st ob e m o r ep e 盹c t ,a n dt h et h r e ed i m e n s i o n a iv i r t u a ic a m p u sm a k e st h e p e o p l ek n o wt h es c h o o li nam o r ed i r e c t - v i e w i n gw a y t h ep a p e rm a k e st h ea n a i y s i st ot h et o o l so fv r m la n dj a v a 3 d ,a s w e l ia st h eh y d o t h e s i z e de n v i r o n m e n t s y s t e m ,p r o p o s e s t h e r e a l - z a t i o ns c h e m e i tb r e a k st h r o u g ht h ei i m i t a t i o nw h i c hp u r e l yu s e s v r m lo rj a v a 3 d ,a n dg i v e st h er e a l i z a t i o n i nv i e wo ft h et e s t i n ga n d b r o w s i n ge f i e c t ,t h ec o m p l e x i t ya n dt h ea r t i s t r yo ft h em o d e in e e dt o b ef u r t h e ri m p r o v e d ,h o w e v e r , t h eo t h e rs i d e s ,s u c ha st h er e a i z a t i o n o fs y s t e mf u n c t i o na n dt h ei n t e r a c t i o no fu s e r ,sb e h a v i o b a r ei d e a i t h i s p r o v e st h ef e a s i b i i i t ya n dp r a c t i c a b i | t yo ft h ee s t a b l i s h m e n to fv i r t u a i c a m p u ss y s t e mb a s e do nt h ev r m la n dj a v a 3 dt e c h n o l o g i e s k e yw o r d s :v i r t u a ir e a l i t y , v r m l ,j a v a 3 d ,v i r t u a ic a m p u s i l 西北大学学位论文知识产权声明书 本人完全了解西北大学关于收集、保存、使用学位论文的规定。 学校有权保留并向国家有关部门或机构送交论文的复印件和电子版。 本人允许论文被查阅和借阅。本人授权西北大学可以将本学位论文的 全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。同时授权中国科学技术信息研 究所等机构将本学位论文收录到中国学位论文全文数据库或其它 相关数据库。 保密论文待解密后适用本声明。 学位论文作者签名: 熬坚l 盈 指导教师签名: 笠垄二 6 幺年 月9e l 。扩c 矿年名月矿日 西北大学学位论文独创性声明 本人声明:所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究 成果。据我所知,除了文中特别加以标注和致谢的地方外,本论文不包含其他人已经 发表或撰写过的研究成果,也不包含为获得西北大学或其它教育机构的学位或证书而 使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确 的说明并表示谢意。 学位论文作者签名:涨零丽 。留年6 月8e t 西北人学硕上学位论文 引言 i n t e r n e t 网从诞生至今一直是一个二维平面世界。虚拟现实技术的发展拓 宽了人们的思维,一批专家提出了建立三维立体网络空间的设想。虚拟现实建模 语言( v r m l ,v i r t u a lr e a l i t ym o d e l i n gl a n g u a g e ) 是描述虚拟环境场景的一种 模型语言,它同时也是i n t e r n e t 上的一种三维标准,允许描述三维对象并把它 们组合到自己的虚拟场景中。 v r m l 的出现使得虚拟现实象多媒体和因特网一样逐渐走进我们的生活,简 单地说,以v r m l 为基础的第二代万维网= 多媒体+ 虚拟现实+ 因特网。第一代万维 网是一种访问文档的媒体,能够提供阅读的感受,使那些对w i n d o w s 风格的p c 环境熟悉的人们容易使用因特网,而以v r m l 为核心的第二代万维网将使用户如 身处真实世界,在一个三维环境里随意探寻因特网上无比丰富的巨大信息资源。 每个人都可以从不同的路线进入虚拟世界,和虚拟物体交互,这样控制感受的就 不再是计算机,而是用户自己,人们可以以习惯的自然方式访问各种场所,在虚 拟社区中”直接”交谈和交往。 v r m l 将创造一种融多媒体、三维图形、网络通讯、虚拟现实为一体的新型 媒体,兼具先进性和普及性。如今,在国外v r m l 已经广泛应用于生活、生产、 科研教学、商务甚至军事等各种领域,并取得了巨大的经济效益。 j a v a 3 d 是s u n 公司于1 9 9 7 年推出的面向i n t e r n e t 的交互式三维图形应用 编程接口( a p i ) ,是j a v a 语言在三维图形领域的扩展,和j a v a 一样有纯粹的面 向对象结构。j a v a 3 d 也逐渐地被用于仿真、三维可视化、虚拟现实等领域。j a v a 3 d 封装了大量的类。编写j a v a 3 d 程序时,只需找到所需用的类并生成对象加以应 用。相对于o p e n g l 和d i r e c t x ,j a v a 3 d 更容易掌握,编程效率更高。j a v a 3 d 的 优点还在于它的代码的可传输性,和其它j a v a 程序一样,利用j a v a 3 d 可以编写 三维场景的a p p l e t 程序,从服务器传送到客户端,然后在客户端运行砼3 。 j a v a 3 d 可以和v r m l 结合进行网络方面的系统开发。v r m l 只是一种描述语言, 对静态三维图形的描述功能比较强大,但由于语法规定过于严格,只能支持简单 的脚本控制场景与用户的交互行为。j a v a 3 d 的功能和可编程性更强,有丰富的 西北大学硕士学位论文 j a v a 类库的支持,能够导入多种格式的图形文件,如d e m 、o b j 、v t k 、3 d s 等, 和v r m l 相比,在对于三维虚拟场景的动态控制方面更易实现。 针对v r m l 解决方案的不足之处,结合虚拟环境的特点,笔者建立了综合应 用j a v a 3 d 及v r m l 建立基于w e b 的虚拟环境应用框架。本研究旨在对v r m l ,j a v a 3 d 等工具和虚拟环境体系作出不同程度的分析,并提出相应的实现方案,突破了单 纯采用v r m l 或j a v a 3 d 的局限性,并给出了实现方案及主要程序,以使以后遇到 同类问题时有一个较好的参照体系。 2 第1 章绪论 本章首先介绍虚拟现实的基本概念,数字校园系统的基本概念,然后介绍本 课题的研究背景和意义,并给出了本课题的主要内容和研究重点,最后是论文的 结构。 1 1 虚拟现实的基本概念 虚拟现实( v i r t u a lr e a l i t y ,v r ) 是计算机生成的3 d 仿真环境,在这个环境 中用户既可以浏览3 d 场景,也可以对场景中的物体进行各种操作。对于我们, 就在于如何运用计算机技术使这个虚拟场景在视觉、听觉、触觉上都像是真实的。 虚拟现实技术是近年来十分活跃的技术研究领域,是一系列高新技术的汇集,这 些技术包括计算机图形学、多媒体技术、人工智能、人机接口技术、传感器技术 以及高度并行的实时计算技术,还包括人的行为学研究等多项关键技术。虚拟现 实是多媒体技术发展的更高境界,它能给用户以更逼真的体验,它为人们探索宏 观世界和微观世界以及由于种种原因不便于直接观察事物的运动变化规律提供 了极大的便利。由于它的诱人前景,一经问世就立即受到了人们的高度重视。有 专家认为,8 0 年代是个人计算机的年代,9 0 年代是多媒体计算机的年代,2 1 世 纪初将是虚拟现实技术的时代。 1 1 1 虚拟现实技术的基本要素 按照当今国际上流行的定义,一个能够真正意义上实现虚拟现实的系统应当 具有以下三个基本要素n 3 : 1 能够给用户以三维立体的虚拟环境。 2 应当给使用者第一人称的感觉,并有实时任意活动的自由。 3 用户能够通过一些控制装置实时地操纵和改变用户所进入的虚拟环境。 由于人视觉的作用,在现实生活中,我们观察到的都是有景深、有立体感的 三维世界,因此要做到完全模拟现实,仅仅靠简单的平面二维图形是不够的,只 有用三维系统才能真正意义地模拟三维世界,才能给用户一种身临其境的感觉。 3 也就是说,生成一种三维立体的虚拟境界是构成虚拟现实的一个最基本元素。 在实现了三维场景后,虚拟现实中很重要的一点就是必须给用户一种第一人 称的感觉。所谓第一人称感觉,就是用户能够在场景中体会到一种与现实生活一 样的感觉。只有拥有了这种感觉,用户才能够真正体会到亲身参与,而不只是简 单地看见自己操纵的一个小人上蹦下跳。同时,对于第一人称感觉十分重要的 一点,就是要求我们必须能够把视点移到所构造的三维场景中的任何一点,就像 在真实世界中您可以随意前进、后退、转弯、蹲下、跳起以得到不同的视角,不 同的视角才会造成不同的场景。 虚拟现实系统的第三个基本要素是在前两个要素的基础上提出来的。这种对 虚拟境界的操作能力必须能够实时实现。任何系统,只要满足了以上的三个要素, 我们就可以称其为一个虚拟现实系统。 1 1 2 虚拟现实系统的特性 从本质上说,虚拟现实就是一种先进的计算机用户接口,它通过给用户同时 提供诸如视、听、触觉等各种直观而又自然的实时感知交互手段,最大限度地方 便用户的操作,从而减轻用户的负担、提高整个系统的工作效率。根据虚拟现实 所应用的对象的不同,虚拟现实的作用可以表现为不同的形式,例如将某种概念 设计或构思成可视化和可操作化;实现逼真的现场效果;达到任意复杂环境的廉 价模拟训练目的等。 从概念上讲,任何一个虚拟现实系统都可以用三个“工”来描述其特性,即 “沉浸( i m m e r s i o n ) 、“交互( i n t e r a c t i o n ) ”和“想象( i m a g i n a t i o n ) 。 如图1 一l 所示: 4 图1 - 1 虚拟现实的三个“i ”特性 其中沉浸感是指虚拟现实系统不再像传统的计算机接口技术一样,用户与计 算机的交互方式已经是自然的,就像现实中人与自然交互一样,完全沉浸在通过 计算机所创建的虚拟环境中;交互性是指虚拟现实系统区别于传统三维动画的特 征,用户不再是被动地接受计算机所给予的信息或者是旁观者,而是能够使用交 互输入设备来操纵虚拟物体,以改变虚拟世界;想象力是指用户沉浸在多维信息 空间中,依靠自己的感知和认知能力全方位地获取知识,发挥主观能动性,寻求 解答,从而深化概念和萌发新意。 “沉浸性 和“交互性 这两个特性,可以说是虚拟现实技术区别于任何一 种其他相关技术( 如三维动画、仿真、遥现与遥作、科学可视化以及传统的多媒 体图形图像技术等) 的本质区别。 1 1 3 虚拟现实系统的实现 有两种方法可以实现虚拟现实,即硬件实现和软件实现。 硬件实现就是利用视觉、嗅觉、触觉、听觉等人类最基本的感觉器官,做出 和人现实生活中的感觉一样的硬件设备,使人不必到现场也会有身临其境的感 觉。常用的硬件设备有图像生成器、3 d 鼠标、数据手套、头盔、声音发生器等, 但这些硬件设备都很复杂,而且价格也十分昂贵。目前大都仅仅运用于军事和航 空航天等方面,用以训练和测试有关人员的驾驶、控制水平。商业上只有些简 单的演示系统。 软件实现主要是指通过一些基本的硬件环境,如常用专用处理器、输入输出 设备、磁记录设备等,利用软件编程的方法在输出设备如显示器上输出逼真的三 维场景。用软件实现的虚拟现实系统虽然还有一定的缺陷,如只能用二维平面表 示三维立体,但由于其价格低廉、易于实现而受到更多人的重视。v r m i 这种崭 新技术的出现,为软件实现网上的虚拟现实系统提供了极大的展示空间。 1 2 数字校园系统的内涵 随着信息技术、通信技术的飞速发展,特别是i n t e r n e t 的普及,为各个大 学的提升信息化层次提供了良好的条件和机遇。信息技术对高等教育产生了史无 前例的巨大冲击,从教育环境、教育模式到教育理念、教育目标,教育思想都在 这场冲击中发生着变革。高等院校应对这种冲击的积极响应是大规模、高投入地 进行校园信息化建设。现在,我国高校在己经完成了基本的校园网建设阶段和综 合信息系统建设阶段,并逐步开展了以“数字校园”为主题的校园网升级改造建 设。因此对数字校园的研究成为了热门课题。 数字校园倡导的目标是利用计算机技术、网络技术、通讯技术对学校的教学、 科研、管理和生活服务等所有信息资源进行全面的数字化,并科学规范地对这些 信息资源进行整合和集成,以构成统一的用户管理、统一的资源管理和统一的权 限控制通过组织和业务流程再造,推动学校进行制度创新、管理创新,最终实现 教育信息化、决策科学化和管理规范化把学校建设成面向校园内,也面向社会的 一个超越时间、超越空间的虚拟大学。通俗地讲,就是在校园里实现信息传输网 络化、信息资源数字化、用户终端智能化。 1 3 课题概貌 1 3 1 课题背景与意义 三维虚拟现实是目前最热的i n t e r n e t 技术之一。随着w e b 3 d 技术的不断发 展,再加上高速网络协议和设备的产生,将改变以往因为网络传输速率慢而导致 的数据量限制的问题。3 d 技术的成熟使得i n t e r n e t 方面的研究已经进入了三维 领域。基于w e b 的三维建模技术和内容表示技术研究源于九十年代后期,当时 国际组织w e b 3 d 和w 3 c 分别提出了v r m l ( 虚拟现实建模语言) 和x m l ( 可扩 充的标记语言) 作为相应的标准。其中v r m l 采用了与h t m l 兼容的形式支持基 于w e b 的三维虚拟环境的建模、通信和互动,而x m l 则提供了一种与展现无 关的内容表示和通信格式。这些标准的制定为在三维虚拟环境中提供内容服务 建立了基础。时至今日,基于v r m l 的技术已经丌始应用于虚拟图书馆、博览 会和展览馆。2 0 0 0 年以来j 欧美的一些大学出现了基于w e b 的3 d 虚拟校园环 境。这些技术的发展也为本项研究提供了可行性。然而,目日仃国内的相关研究比 较薄弱。v r m l 技术在理论和应用上正处于一个飞速发展阶段,j a v a 3 d 在应用方 6 面的优越性也弥补了v r m l 某些方面的不足。从3 d 空间理论的研究角度看,目前 涉及内部的3 d 数据结构,数据的组织与获取以及3 d 拓扑关系的定义与表示方法 都需进一步研究。有待发展三维空间的分析算法,使未来的三维研究能提供量算、 分析等功能。而且由于实时渲染的需要以及现在网络传输速度的限制,虚拟现实 环境在美观性、真实性等方面在现阶段还远远比不上如3 d m a x 等物体建模工具所 创建的环境。这有赖于各方面的努力,如网络带宽、计算机处理速度、渲染引擎 等。另外,在建模方法上也有待改进和创新。 我所选课题的题目是:基于j a v a 3 d 和v r m l 的数字校园系统。因为我一直从 事j a v a 编程语言方面的教学,面向对象技术的研究,以及人机交互技术的研究, 故在西北大学计算机系华庆一教授( 我的研究生导师) 的指导和帮助下,决定选 择v r m l 虚拟现实技术和j a v a3 d 方面的综合应用作为研究方面,并借以构建面 向高等学校校园的数字化系统,具体实例则是以我工作的单位郑州大学西亚 斯国际学院为蓝本。针对v r m 解决方案的不足之处,结合虚拟环境的特点,笔 者建立了综合应用j a v a 3 d 及v r m l 建立基于w e b 的虚拟环境应用框架。本研究旨 在对v r m l ,j a v a 3 d 等工具和虚拟环境体系作出不同程度的分析,并提出相应的 实现方案,突破了单纯采用v r m l 或j a v a 3 d 的局限性,并给出了实现方案及主要 程序,以使以后遇到同类问题时有一个较好的参照体系。 1 3 2 课题的主要研究内容 本文旨在将v r m l 结合j a v a 3 d ,用来解决建立一个数字校园系统的问题。在 本论文设计中,具体研究包括如下工作: 1 分析v r m l 语言的基本概念、语言特性,着重探讨了v r m l 中事件体系、 场景交互以及在虚拟环境运用中的局限性。 2 研究j a v a 3 d 的基本概念、技术特性,介绍了创建j a v a 3 d 形体,调用v r m l 场景以及与用户进行交互的方法。 3 通过实际虚拟系统的研究,进行系统模型的分析和总体设计,通过抽象、 简化和原型复用的方法进行校园中各种建筑物的建模,探讨了j a v a 3 d 如何获取 v r m l 节点,如何进行用户行为交互的方法,最后分析了如何将系统发布于网 7 络上并改善浏览速度。 1 4 论文的结构 本文的第一章介绍了虚拟现实及数字校园系统的概念,说明了课题的研究背 景和意义,第二章介绍了v r m l 语言的基本概念与特性、事件体系、场景交互 等概念。第三章介绍了j a v a 3 d 语言的基本概念与特性,其基于场景图的系统模 型,如何创建j a v a 3 d 程序,以及调用v r m l 场景的方法,最后分析了二者协同 情况下存在的优势以及可能出现的问题。第四章分析在实际开发过程中如何建立 系统模型,如何实现v r m l 与j a v a 3 d 的综合编程,以及如何对系统进行建模等 问题的分析。第五章是对全文的总结及对以后进一步研究工作的展望。 8 第2 章v r m l 语言及其在虚拟环境中的应用分析 虚拟现实建模语言( v i r t u a lr e a l i t ym o d e l i n gl a n g u a g e ,v r m l ) 是一种建模 语言,也就是说,它是用来描述三维物体及其行为的,可以构建虚拟境界( v i r t u r a l w o r l d ) 。v r m l 的基本目标是建立因特网上的交互式三维多媒体,基本特征包括 分布式、三维、交互性、多媒体集成、境界逼真性等。 2 1v r m l 的发展历程与基本特性 2 1 1 发展历程 v r m l 是由m a r kp e s c e 和a n t h o n y ( t o n y ) 于1 9 9 3 年1 2 月开始设计,采用s g i ( s i l i c o ng r a p h i c s i n c ) 公司的o p e ni n v e n t e ra s c i i 文件格式作为v r m l 语言 的基础,1 9 9 4 年3 月是日内瓦召开的第一届w w w ( 互联网国际) 大会上,首次正 式提出了v r m l 这个名字。 1 9 9 4 年1 0 月在芝加哥召开的第二届w w w 大会上公布了规范的v r m l i 0 标准。 1 9 9 5 年5 月,v r m l1 0 规范正式出台,但此规范缺少对一些关键特性如动作、 交互和行为的支持。 1 9 9 6 年8 月在新奥尔良召开的优秀3 d 图形技术会议一s i g g r a p h 9 6 上公 布通过了规范的v r m l 2 0 标准。它在v r m l l 0 的基础上进行了很多的补充和完善, 比v r m l l 0 增加了近3 0 个节点,增强了静态世界的仿真性,使3 d 场景更加逼真, 并增加了交互、动画、编程、原形定义等多项功能。经i s oj t c i s c 2 4 同意,这 一版被作为1 4 7 7 2 号委员会草案公布,并且于1 9 9 7 年4 月提交审议。1 9 9 7 年1 2 月v r m l 作为国际标准正式发布,1 9 9 8 年1 月正式获得国际标准化组织i s o 批准 ( 国际标准号i s 0 i e c l 4 7 7 2 一l :1 9 9 7 ) ,简称v r m l 9 7 。 1 9 9 9 年底,v r m l 的又一种编码方案e x t e n s i b l e3 d ( x 3 d ) 草案发布,x 3 d 整 合正在发展的x m l 、j a v a 、流技术等先进技术,包括了更强大、更高效的3 d 计 算能力、渲染质量和传输速度,以及对数据流强有力的控制,多种多样的交互形 式。x 3 d 更具有弹性,既能满足基本需要,又能适应扩展。2 0 0 4 年,在世界计算 机图形大会上x 3 d 国际规格标准正式通过。但是x 3 d 在现阶段应用还很少,还有 9 很多工作尚待完成,目前流行的仍然是v r m l 2 0 标准。 2 1 2 基本特性 v 跚l 具有以下的特点: 1 工作模式。v r m l 的访问方式是基于客户机服务器模式的。其中服务器 提供文件及支持资源图像、视频、声音等,客户端通过网络下载希望访问的场景, 并通过本地平台上的浏览器交互式地访问该文件描述的虚拟境界。 2 分割设计模式及可扩充性。v r m l 支持多个分布式文件的内联机制( 1 n li n e 节点) 通过内联机制嵌入其它w r l 文件,从而允许将一个巨大的虚拟环境进行分 割设计而后合并展示。同时,v r m l 还提供外部原型引用机制( e x t e r n p r o t o 语 句) 、锚链机制( a n c h o r 节点) 、脚本语言( s c r i p tl a n g u a g e ) 等机制,允许以超 链接方式在本地节点中指向并组织i n t e r n e t 上的不同地址的资源,实现可扩充 性。 3 独立于平台。v r m l 浏览器通过解析v r m l 文件描述虚拟场景,而浏览器 由本地平台提供,实现了平台独立性。 4 增强了的静态场景。v r m l 语言建立三维虚拟场景的优势在于其可以非常 方便生成三维几何实体,丰富的原始实体节点为描述复杂的大规模场景提供了广 泛的可选性和可组合性。挤压节点,原型构造节点和插值器节点允许创作者根据 需要自由地创建复杂实体。同时b a c k g r o u n d 、f o g 等节点使三维场景真实感更强。 5 实时3 d 渲染。实时3 d 着色引擎在v r m l 中得到了更好的体现。这一特性 使建模和浏览更明确地分离,这也是v r m l 不同于其他3 d 建模、动画制作工具的 一个特点。后者是预先绘制,因而不能提供交互。 6 网络传输容易。v r m l 与h t m l 相似,用a s c i i 文件来描述场景和链接, 这保证了对各种平台通用。由于v r m l 可以在低带宽异构网络环境中实时进行三 维信息的远程传输和远程指令的接受,而且对三维图形生成的计算机性能要求不 高,用它来构筑虚拟环境具有低代价、集约化的优点。 7 动态适配性。理论上,对v r m l 浏览器来说应能处理由数亿个对象组成的 分布在i n t e r n e t 上的虚拟环境。其次,v r m l 在高、低档的机器上都应该工作得 1 0 西北大学硕士学位论文 很好,它应允许浏览器为了提高性能而降低图像或仿真质量,而在硬件性能增强 时质量可以变得更好。v r m l 构建的虚拟环境可相对于网络性能而动态适配,从 目前常见的a d s l 、v d s l 到今后的更高速的网络连接。 8 脚本支持。v r m l 通过脚本节点( s c r i p t ) 引入j a ya 或j a v a s c r i p t 语言 编写的脚本程序来扩展其功能,创作者可以在节点中实现自定义的功能,如交互, 动画,动态生成场景等。 2 2v r m l 的工作原理与核心体系 v r m l 的访问方式是基于客户机月艮务器模式,其中服务器提供v r m l 文件以 及支持资源,客户通过网络下载希望访问的文件,并通过本地平台上的v r m l 浏 览器对该文件解释生成三维场景,以供用户交互式访问该虚拟境界,因为浏览器 是本地平台提供的,从而实现了和硬件平台的无关性。 客户机各自建立v r 世界的访问方式被称为统分结合模式,也是v r m l 的基本 概念。 v r m l 和h t m l 一样,是一种a s c i i 码描述语言,它用文本信息描述三维场景, 告诉浏览器如何创建一个三维世界并在其中航行,这些指令由再现器( r e n d e r ) 解释执行,再现器是一个内置于浏览器中或外部的程序。 正是基于这种工作机制,使其在网络应用中有很快的发展。当初v r m l 的设 计者们考虑的也正是文本描述的信息在网络上的传输比图形文件迅速,所以设计 者避开在网络上直接传输图形文件而改用传输图形文件的文本描述信息,把复杂 的处理任务交给本地机,从而减轻了网路的负荷。 v r m l 文件描述的基于时间的三维空间成为虚拟境界,它有对象构成,而对 象及其属性用节点描述,节点是v r m l 的基本单元。每个节点由类型,域,事件, 事件名字组成,节点按照一定规则构成场景图,场景图中分两类节点,第一类节 点用于视觉,听觉角度表现对象,他们按层次体系组织,反映境界的空间结构, 提供颜色,灯光,超链接,材质,化身,重力,碰撞,地形随动,飞行等功能, 支持局部坐标系;第二类节点参与时间产生和路由机制,形成路由图,确定境界 随时间推移如何动态变化。 西北大学硕士学位论文 环境变化、用户交互、时间推移产生事件、传感器检测并发出初始事件,产 生其他事件或修改场景图结构,从而提供动态特性。插入器是特殊事件处理器, 利用它可以设计动画。 对于复杂行为处理则需利用脚本接点( s c r i p t 节点) ,它包含一组脚本描述 语言编写的函数,s c r i p t 节点收到事件后,将执行相应的函数,该函数可以常 规的路由机制发送事件或直接向s c r i p t 节点指定发送事件。 2 3v r m l 文件的基本内容 2 3 1v r m l 文件的基本结构 v r m l 文件是一个后缀名为w r l 的文件,一般主要由文件头、造型、原型和 事件路由4 个部分组成。其中,只有文件头是必须的。 v r m l 文件头的基本语法如下: # v r m lv 2 0u t f 8 文件头是v r m l 文件的标志,所有2 o 版本的v r m l 文件都以这行文字打头, u t f 8 说明该文件使用的字符集是国际u t f 一8 字符集,该语句必须放在文件的第一 行。每一行的结束是用换行( n e w li n e ) 或者是c a r r i a g er e t u r n 字符来控制。 2 3 2v r m l 节点 v r m l 文件的最基本的组成部分是节点,v r m l 文件的主要内容就是节点的层 层嵌套以及节点的定义和使用,由此构成整个的虚拟世界。 个v r m l 节点是一个对象,节点是各种现实物体或概念的抽象。v r m l 场景 中的每个对象都是特定类型的节点,例如一个节点可以是s p h e r e 、c y li n d e r 、 c u b e 等。以上节点都是属于简单的几何节点( g e o m e t r yn o d e ) 。节点包括和事件, 各种信息可以在节点之间通过路由来传递。 v r m l 还支持其他类型的节点,如m a t e r i a l 节点、t e x t u r e 2 节点。这些节点 都属于属性节点( p r o p e r t yn o d e ) 。 v r m l 场景利用属性节点中的m a t e r i a l 节点,定义该节点之后所有几何节点 的表面属性,利用t e x t u r e 2 节点定义该节点后的所有几何节点的纹理属性。 1 2 两北大学硕士事位论文 v r m l l 0 定义了3 6 个节点,而v r m l 2 0 定义了5 4 个节点。 在v r m l 文件中可以为节点定义一个名称,然后在本文件的后面就可以反复 地引用该节点。被定义的节点称为原始节点;对被命名节点的引用称为实例。节 点的域值在原始节点中应己设定,在实例中这些域值将被不能修汐的完全相同引 用。当原始节点中的域值被修改,所有的实例也将自动同时修改。总之,实例创 建和原始节点完全相同的造型。 定义节点名称的基本语法如下所示: d e f 节点名称节点 ) 引用节点的语法如下所示: u s e 节点名称 当节点属于同一种类型时,v r m l 通常用参数来区分它们。这就引入了v r m l 节点的域的概念。域定义了节点的属性,每一个节点设有一个或多个域,域可能 包括各种不同的数据和一个或多个域值,每个域都有各自的缺省值。 域通常可分为两类:一类只包含单值( 所谓单值,可以是一个单独的数,也 可以是定义一个向量或颜色的几个数,甚至可以是定义一幅图像的一组数) ;另 外一类是包含多个单值。 对于单值类型的域,名称以“s f ”开始;而多值类型的域,名称以“m f ”开 始。在v r m l 文件中,表示多值域的方法是:一系列用逗号和空格间隔开的单值, 整个用方括号括起来。如果一个多值域,不包含任何值,则只标出方括号 ”, 其中不填任何数。如果一个多值域,恰好只包含一个数,可以不写括号,直接写 该值。 在同一个节点中的域具有以下特点: 无序性:即各个域之间没有先后的次序之分,以不同顺序排列一一对应相 同的域和域得到的最后结果完全一致。 西北人学硕士学位论文 可选性:即各个域都有自己相应的缺省值。 2 3 4v r 皿造型 造型是v r m l 文件所描述的场景图,在它当中,v r m l 文件以阶层式的结构进 行安排,场景图不仅只是一些物件集合在一起而已,它更定义了这些物件的顺序。 在一个场景中,排在前面的物件可以影响排在后面的物件。如一个旋转( r o t a t i o n ) 或是材质( m a t e r i a l ) 的物件会影响在它之后的物件,使它以某个角度或是某种材 质呈现出来:分离( s e p a r a t o r ) 物件可以用来限制影响的范围,这样来场景中 的物件就会一组一组地分割开来了;在它当中,我们还可以使用v r m l 提供的结 点描述语言来设计三维对象的各种属性,如果在s h a p e 节点的a p p e a r a n c e 域中 加一个a p p e a r a n c e 节点,它的m a t e r i a l 域( 材质) 定义了一个m a t e r i a l 节点, 它可以对立方体的材质、颜色进行描述,如: # v r m lv 2 0u t f 8 g r o u p c h i l d r e n s h a p e a p p e a r a n c ea p p e a r a n c e m a t e r i a lm a t e r i a l d i f f u s e c o l o r0 20 80 2 s h i n i h e s s0 8 ) ) g e o m e t r ys p h e r e r a d i u s1 51 ) ) 2 4v r m l 的事件体系 前面所述的节点除具有域属性外,还具有事件属性。事件由事件值和时间戳 组成。事件值类似于节点域值,可以有不同的数据类型;时间戳则是描述事件机 1 4 制时序流程的一种要领性装置,同时还可供脚本节点依据用户动作的顺序或事件 之间的时间间隔处理事件。 事件信号通过改变节点的域值,在节点之间产生交互的影响。一个事件由时 标和一个域组成。事件在各节点之间相互影响由事件入口和事件出口来实现,事 件入口是附加在节点上的用来接受事件信号的逻辑检测器;而事件出口是附加在 节点上的逻辑输出终端,这个节点必须是事件的发出者。事件出口也可储存当前 事件信息。即,事件区分为入事件( e v e n t l n ) 和出事件( e v e n t o u t ) 。入事件要 求节点改变自己某个域的取值,而出事件则要求改变其他节点的域值。一个节点 通常具有多个入事件接口和出事件接口,但有一些节点并不同时具有入事件和出 事件接口。 节点中的公共域( 标有e x p o s e d f i e l d ) 隐含具有以下两种事件:“s e t 一事件 名 的入事件用于设置节点域值,“事件名一c h a n g e d ”出事件用于当该域值发生 变化时向外界报告新值。公共域中事件名字的s e t 一和一c h a n g e d 部分可以省略不 写,但一些与公共域无关的事件名也带有s e t 一或一c h a n g e d ,则这种事件名不能省 略。 产生事件和接收事件的节点之间的连接叫做路由,其作用在于将各个不同的 节点绑定在一起以使虚拟空间具有动感和交互性。路由采用的是r o u t e 语句,在 r o u t e 语句中所引用的节点都应在该语句之前定义。当建立路由将一个出事件传 递给另一个入事件时,两事件的名字不必相同,但两事件的类型必匹配。路由语 句的格式如下: r o u t en o d e s o u r c e f i e l dt on o d e s i n k f i e l d 在绑定路由的过程中应注意的事项如下: 同节点的域和域值一样,e v e n t l n 和e v e n t o u t 也具有一定的数值类型。 绑定两个节点的路由在没有被触发之前一直都处于休眠的状态,只有在被 触发时,才有事件从输出接口的节点产生,并且通过路由传送到输入接口的节点, 引起相应的虚拟世界中的变化。 可以将多个节点绑定在一起,从而创建复杂的线路,在虚拟世界中实现更 真实的交互性。 西北大学硕士学位论文 2 5v r m l 中的场景交互与场景对象的动画实现 在v r m l 中,检测器( s e n s o r ) 节点是交互能力的基础。检测器节点共九种。 在场景图中,检测器节点一般是以其它节点的子节点的身份而存在的,它的父节 点称为可触发节点,触发条件和时机由检测器节点类型确定。 当你拖动鼠标或按动箭头键时( 按照v r m l 术语,称为航行) ,虚拟境界就会 旋转或缩放,这实际上是在调整你的视点位置或视角。在虚拟场景的重要位置可 以定义视点节点( v i e w p o i n t ) ,它们是境界作者给用户推荐的上佳观赏方位 在场景图中,除节点构成的层次体系外,还有一个“事件体系”,事件体系 由相互通讯的节点组成。能够接收事件的节点都应具有事件入口( e v e n t i n ) ,如 果它要接收多种类型的事件( 称为入事件) ,它就应该具有多个事件入口,也就 是说,事件入口象节点的域一样是有类型的。同样,发送事件的节点应有事件出 口( e v e n t o u t ) ,事件出口也是有类型的。 2 5 1 传感器与交互功能 v r m l 场景中的造型能够对浏览者的动作做出反应,称之为交互功能。v r m l 通过一系列交互传感器( s e n s o r ,或称检测器) 在三维环境和用户之间感知交互。 一个具有动态能力的节点需包含传感器。v r m l 中的交互传感器分为接触传感器、 环境传感器、感知传感器、碰撞编组4 类。除此之外还有控制时间规律变化的时 间传感器t i m e s e n s o r 节点。它们提供了用户与虚拟世界中的物体进行交互的机 制:根据时钟或者用户的动作,它们可以产生一个相应的事件,这事件沿着事先 设定好的路由传递下去,从而使得虚拟世界对用户做出反应,实现交互。 t o u c h s e n s o r 传感节点用于感知用户鼠标触发的动作,当用户用鼠标触摸 时、单击、按下、松开被感应的造型时,将触发一个动画插补器节点,造型会产 生各种动画效果。p l a n e s e n s o r 用于感知用户在x o y 平面上鼠标拖拽的动作, s p h e r e s e n s o r 用于感知用户绕中心点拖拽旋转的动作,c y li n d e r s e n s o r 用于感 知用户绕中心轴拖拽旋转的动作。v i s i b i l i t y s e n s o r 用于从浏览者所在的方位 ( 包括位置和朝向) ,感知一个空间长方体区域,在当前场景中是否可以被看见, 据此输出事件触发动画效果;p r o x i m i t y s e n s o r 传感节点用于从浏览者视点所在 1 6 的方位,感知用户进入、退出设定的空间长方体区域的动作,设定的空间长方体 是传感器的感知区域,在感知区域内创建造型。c o l l i s i o n 用于从浏览者所在的 方位,感知用户与该组中任何子节点造型发生碰撞动作,当用户与造型发生碰撞 时,传感器输出事件触发动画效果,也可启动声音节点为碰撞动作配上音效效果, 从而使虚拟现实场景更加逼真。 下面给出t o u c h s e n s o r 和c y l i n d e r s e n s o r 这两个传感器的主要结构: 1 接触传感器t o u c h s e n s o r t o u c h s e n s o r 节点用于创建检测用户基于指点设备( 如鼠标、操纵杆等) 的 动作,并将其转换后以各种形式的事件加以输出。t o u c h s e n s o r 节点可以作为任 何编组节点的子节点使用,并感知用户对该编组节点中所有造型的指点动作。 t o u c h s e n s o r 节点的主要结构如下: t o u c h s e n s o r ( e n a b l e dt r u ee x p o s e d f i e l ds f b o o l is a c ti v ee v e n t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年西安高新第三中学“名校+”教师招聘考试备考试题及答案解析
- 2025广西北海市银滩中学招聘教师6人笔试模拟试题及答案解析
- 2025福建农林大学农林生物安全全国重点实验室专业技术人员招聘2人笔试参考题库附答案解析
- 2025四川南充市卫生健康委员会南充市红十字中心血站引进高层次人才考核招聘1人笔试参考题库附答案解析
- 2025上汽安吉物流招聘1人笔试备考试题及答案解析
- 2025年湖南岳阳华容县城区学校选调70名教师考试参考题库附答案解析
- 2025云南省玉溪市儿童医院招聘博士研究生(2人)笔试备考试题及答案解析
- 2025海南省第三卫生学校招聘事业编制工作人员23人笔试参考题库附答案解析
- 光伏专业毕业论文结论
- 2025湖南株洲市渌口区南洲镇城镇公益性岗位招聘计划笔试参考题库附答案解析
- 血透室运用PDCA循环降低无肝素透析凝血发生率品管圈成果汇报
- 三叉神经痛微球囊压迫术的护理
- 主持人妆 男主持人上镜妆
- 安全伴我行-大学生安全教育智慧树知到答案章节测试2023年哈尔滨工程大学
- LY/T 1828-2009黄连木栽培技术规程
- 安全文明施工措施费清单五篇
- X射线衍射课件(XRD)
- 医院总务设备科管理制度
- 常见皮肤病的种类及症状图片、简介大全课件
- 高中化学学法指导课件
- 吊篮拆除安全技术交底方案
评论
0/150
提交评论