虚拟校园漫游系统的设计与开发

发布时间:





2007届毕业设计(论文

论文题目:虚拟校园漫游系统的设计与开发


:

:

:

:
::

信息与电子工程学院教育技术学___
__A2_____
___
__________
二○○七
www.qinxuejy.net成都家教,成都家教网友情提供


承诺书


我谨在此郑重承诺:
本毕业设计(论文)是本人在指导老师
指导下,独立撰写完成的。凡涉及他人观点和材料,均依著作规范作了注释。如有抄袭或其他违反知识产权的情况,我愿接受学校处分。

承诺人(签名):

200762
www.qinxuejy.net成都家教,成都家教网友情提供

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发

虚拟校园是基于地理信息技术虚拟现实技术和计算机网络技术等高新技术,将校园地理信息和其他校园信息相结合,以虚拟现实场景界面实现校园景观及信息的浏览查询,并可上载到计算机网络和提供远程用户访问。虚拟校园提供了校园景观及设施最直观的表现形式,方便了用户对校园信息的访问,促进了大学的建设和远程教学的发展。建立简单易行的现实感强的虚拟校园漫游便成为对大学校园虚拟化的目标。而VRML3DMAX等相关软件也为虚拟校园提供了技术上的支持。
本文的研究目的是设计并开发一个虚拟校园漫游系统,作者通过阅读大量国内外相关文献资料,深入地研究了虚拟现实技术和现有构造三维场景的语言,在此基础上,确定了基于VRML及浏览器插件技术的虚拟现实系统架构方案。
首先,以虚拟场景构造的流程为线索,采用3DstudioMaxVRMLPad实现虚拟场景对象的建模;针对建筑物建模的复杂度和真实感问题,提出了建筑物二次建模方法;
其次,探讨了虚拟校园场景的交互。在此基础上实现了视点控制和动画交互。
第三,在系统设计开发的末尾阶段,讨论对虚拟校园漫游系统的优化方法。通过碰撞检测、层次细节技术、纹理映射等技术方法优化系统。
除此之外,还探讨了系统的整体构架、系统的开发流程、模型纹理贴图以及纹理贴图对场景外观的巨大作用。最后综合以上研究工作,设计并实现了一个基于VRML技术的虚拟校园系统。

关键词:虚拟校园、虚拟现实(VR)、漫游、建模、纹理贴图、交互设计

I

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
VirtualCampusRoamingSystemDesignand
Implementation
ABSTRACT
VirtualCampusisbasedonGIStechnology,virtualrealitytechnologyandcomputernetworktechnologyandotherhigh-tech,tothecampusofgeographicinformationandothercampusinformationcombinedavirtualrealityinterfacesceneCampuslandscapeandbrowseinformationinquiries,canuploadcomputernetworksandprovideremoteuseraccess.Establishsimplesenseofreality-thevirtualcampuswillberoamingthecampusoftheUniversitytargetsofvirtual.VRML3DMAXandrelatedsoftwaresuchasvirtualcampusforprovidingtechnicalsupport.
ThepurposeofthisstudyistodesignanddevelopavirtualcampusroamingsystemTheauthorathomeandabroadthroughalotofreadingrelevantdocuments,in-depthstudyofvirtualrealitytechnologyandtheexistingstructureofthelanguageof3Dscenes,onthisbasis,determinedbasedonVRMLandbrowserplug-intechnologyofvirtualrealitysystemarchitectureprogram.
First,thevirtualscenetectonicprocessesforclues3DstudioMaxandusingthevirtualsceneVRMLPadobjectmodeling;BuildingModelingagainstthecomplexityandrealism,thesecondbuildingmodeling;
Secondly,explorethevirtualcampusscenesinteractive.Achieveviewpointcontrolandinteractiveanimation.
Third,thesystemdesignanddevelopmentphasetotheend,thediscussionofvirtualcampusroamingsystemoptimization.Throughcollisiondetection,levelsofdetail,texturemappingsystemoptimizationtechniques.
Inaddition,thesystemalsodiscussedtheoverallframeworkforthesystemdevelopmentprocess,Modeltexturemappingandtexture
II

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
mappingappearanceonthesceneoftremendousrole.Finally,designavirtualcampusroamingsystem.
KeywordsVirtualcampusVirtualreality(VRRoamingModelingTextureMappingInteractiveDesign

III

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发

.............................................................................................................................IABSTRACT..................................................................................................................II第一章............................................................................................................11.1引言................................................................................................................1
1.2虚拟现实技术概述.........................................................................................11.3虚拟现实技术的定义和特征.........................................................................41.4本文的主要工作.............................................................................................51.5论文的主要结构.............................................................................................6第二章系统总体设计..................................................................................................72.1系统的总体结构.............................................................................................7
2.2开发工具.........................................................................................................82.3系统开发流程...............................................................................................11第三章虚拟校园场景建模........................................................................................133.1场景建模.......................................................................................................13
3.2场景对象优化...............................................................................................193.3场景外观.......................................................................................................213.4本章小结.......................................................................................................24第四章虚拟校园漫游系统的交互............................................................................254.1VRML传感器节点简介...................................................................................25
4.2虚拟校园漫游系统的交互...........................................................................264.3虚拟校园漫游系统的视点控制...................................................................284.4本章小结.......................................................................................................29第五章虚拟校园漫游系统的优化............................................................................3051碰撞检测技术............................................................................................30
52层次细节技术.............................................................................................3053纹理映射技术............................................................................................3154场景消隐技术............................................................................................3155文件编辑环节的优化.................................................................................325.4本章小结.......................................................................................................33第六章总结与展望....................................................................................................34参考文献......................................................................................................................35........................................................................................................................36附录1虚拟校园漫游系统的部分场景图..................................................................37
IV

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
第一章
1.1引言
虚拟现实技术(VirtualReality,简称VR)是20世纪末兴起的一门崭新的综合性信息技术。它融合了数字图象处理,多媒体技术,传感器等一系列新兴技术,利用计算机生成虚拟的环境,并可以进行交互和仿真。人们将虚拟现实技术看做是仅次于互联网的改变世界的未来的重要技术。当代科学技术的发展以及人们为了适应未来信息社会的需要,必须提高人与信息社会的接口能力,提高人对信息的理解能力。人们不仅要求通过打印输出在外部去观察信息处理的结果,还要求能通过人的视觉、听觉、触觉以及形体、手势或者口令等参与到信息处理的环境中去,从而获得身临其境的体验[1]
虚拟现实技术是一种计算机界面技术。是一种先进的计算机用户接口。它通过给用户提供诸如视觉、听觉、触觉等各种直观和自然的实时交互手段,最大限度的方便用户的操作,提供用户对一些事物真实的感受。虚拟现实实时的三维空间表现能力,人机交互的工作环境,以及给人带来的身临其境的感受,改变了人与计算机的枯燥、生硬的现状。人们过去只能从计算机系统外部去观察处理的结果,现在已能够沉浸到计算机系统所创造的环境中;过去只能通过键盘、鼠标、麦克风与计算机环境中的单维数字信息交互,现在已能够利用多种传感器与多维化的信息空间发生交互。
目前,虚拟现实技术在应用方面的研究非常的活跃,涉及的领域非常的广泛,也充分显示出其良好的发展前景。如在军事、机械设计方面、医疗、教育、娱乐等方面,虚拟现实都起到了增强现实的作用,在一定程度上的人机交互中,用户把计算机作为完成工作的工具,增强用户对现实世界的感知和交互。
虚拟现实技术与多媒体技术、网络技术是21世纪三大最具发展潜力的计算机应用技术。虽然虚拟现实目前还存在着许多尚待解决的理论问题和尚未克服的技术困难,对人类的生活工作所产生的影响也不过微乎其微。但是,可以预见的是,在不久的将来,虚拟现实技术必将对人类的生产和生活产生重大的影响。
1.2虚拟现实技术概述
121虚拟现实的演进
虚拟现实技术经历了探索、集成、全面发展三个阶段。
1

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
1962MortonHeilig研制成功首台全传感仿真系统Sensorma
1965Sutherland博士提出UltimateDisplay(终极显示概念。1968Sutherland首次研制成功头盔式显示器(HeadMountesDisplayHMD)。
20世纪70年代中期美国战斗机飞行模拟器研制成功,仅头盔显示器就价值数百万美元,其屏幕显示内容主要包括:窗外场景、敌友识别符、攻击目标信息、威胁信息以及优化的飞行路线。
1984年,WilliamGibson的小说《Neuromnance》(神经漫游者),使赛博空间这个词得到了广泛的推广。
20世纪80年代中期,美国NASA研制成功应用于载人航天使用的VIEW系统,VIEW系统具有以下特征:头部安装有跟踪器、单色宽视场立体头盔显示器、语音识别器、三维声音输出装置以及带有跟踪器的数据手套等。VIEW系统配置已经成为当今虚拟现实系统的典型配置。
20世纪90年代,VR的研究热潮开始向民用高科技企业转移。
20世纪90年代中期,标准化的虚拟现实建模语言VRML为在INTERNET上构建可共享、可交换的WWWWORDWIDEWEB)虚拟环境奠定了良好的基础。随着技术的进步,VRML本身也从早期的VRML1.0发展到了VRML2.0,再发展为VRML97标准,到目前的X3D规范[2]
122虚拟现实技术的发展现状
1)国外虚拟现实技术的研究现状
美国作为VR技术的发源地,其研究水平基本上就代表国际VR发展的水平。目前美国在该领域的基础研究主要集中在感知、用户界面、后台软件和硬件四个方面[4]
美国宇航局(NASAAmes实验室研究主要集中在以下方面:将数据手套工程化,使其成为可用性较高的产品;在约翰逊空间中心完成空间站操纵的实时仿真。大量运用了面向座舱的飞行模拟技术。对哈勃太空望远镜的仿真。现在正致力于一个叫“虚拟行星探索”(VPE的试验计划。现在NASA己经建立了航空、卫星维护VR训练系统,空间站VR训练系统,并且已经建立了可供全国使用的VR教育系统。麻省理工学院(MIT是研究人工智能、机器人和计算机图形学及动画的先锋,这些技术都是VR技术的基础,1985MIT成立了媒体实验室,进行虚拟环境的正规研究。华盛顿大学华盛顿技术中心的人机界面技术实验室(HITLabVR研究引入了教育、设计、娱乐和制造领域。
90年代初起,美国率先将虚拟现实技术用于军事领域,主要用于以下四个方面:虚拟战场环境;进行单兵模拟训练;实施诸军兵种联合演习;进行指挥员训练[5]
2

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
2)我国虚拟现实技术的研究现状
我国VR技术研究起步较晚,与国外发达国家还有一定的差距,但现在已引起国家有关部门和科学家们的高度重视,并根据我国的国情,制定了开展VR技术的研究计划。九五规划、国家自然科学基金委、国家高技术研究发展计划等都把VR列入了研究项目。国内一些重点院校,已积极投入到了这一领域的研究工作。北京航空航天大学计算机系是国内最早进行VR研究、最有权威的单位之一,并在以下方面取得进展:着重研究了虚拟环境中物体物理特性的表示与处理;在虚拟现实中的视觉接口方面开发出部分硬件,并提出有关算法及实现方法;实现了分布式虚拟环境网络设计,可以提供实时三维动态数据库、虚拟现实演示环境、用于飞行员训练的虚拟现实系统、虚拟现实应用系统的开发平台等。
浙江大学CAD&CG国家重点实验室开发出了一套桌面型虚拟建筑环境实时漫游系统,还研制出了在虚拟环境中一种新的快速漫游算法和一种递进网格的快速生成算法。哈尔滨工业大学已经成功地虚拟出了人的高级行为中特定人脸图像的合成、表情的合成和唇动的合成等技术问题;清华大学计算机科学和技术系对虚拟现实和临场感的方面进行了研究;西安交通大学信息工程研究所对虚拟现实中的关键技术——立体显示技术进行了研究,提出了一种基于JPEG标准压缩编码新方案,获得了较高的压缩比、信噪比以及解压速度;北方工业大学CAD研究中心是我国最早开展计算机动画研究的单位之一,中国第一部完全用计算机动画技术制作的科教片《相似》就出自该中心。123虚拟现实的发展趋势
虚拟现实技术是20世纪末才兴起来的一门崭新综合性的信息技术,尚处于初创时期,远未达到成熟阶段。在虚拟现实的理论、算法和技术实现等各方面都有很多待解决的课题和待发展的领域,它的发展创新的余地很大。虽然目前世界各国都已成功地开发出一些虚拟现实的典型应用项目,但与其它高新技术的应用相比,尚处于应用开发的初始阶段。虽然人们也许不能清楚地设想出,新世纪里虚拟现实出现并普及的新形式,但人们能通过应用媒介形态变化原则和延伸媒介领域的主要传播特性,构想出合理的未来情境。总体上看,纵观多年来的发展历程,VR技术的未来研究仍将遵循“低成本、高性能”这一原则,从软件、硬件上展开,并将在以下主要方向发展:
1)动态环境建模技术
虚拟环境的建立是VR技术的核心内容,动态环境建模技术的目的是获取实际环境的三维数据,并根据需要建立相应的虚拟环境模型。
2)实时三维图形生成和显示技术
3

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
三维图形的生成技术已比较成熟,而关键是如何“实时生成”,在不降低图形的质量和复杂程度的前提下,如何提高刷新频率将是今后重要的研究内容。外,VR还依赖于立体显示和传感器技术的发展,现有的虚拟设备还不能满足系统的需要,有必要开发新的三维图形生成和显示技术。
3)新型交互设备的研制
虚拟现实实现人能够自由地与虚拟世界中的对象进行交互,犹如身临其境,借助的输入输出设备主要有头盔显示器、数据手套、数据衣服、三维位置传感器和三维声音产生器等。因此,新型、便宜、鲁棒性优良的数据手套和数据服将成为未来研究的重要方向。
4)智能化语音虚拟现实建模
虚拟现实建模是一个比较繁复的过程,需要大量的时间和精力。如果将VR术与智能技术、语音识别技术结合起来,可以很好地解决这个问题。笔者对模型的属性、方法和一般特点的描述通过语音识别技术转化成建模所需的数据,然后利用计算机的图形处理技术和人工智能技术进行设计、导航和评价,将基本模型用对象表示出来,并逻辑地将各种基本模型静态或动态地连接起来,最后形成系统模型。在各种模型形成后进行评价并给出结果,并由人直接通过语言来进行编辑和确认[5]
1.3虚拟现实技术的定义和特征
131虚拟现实的概念
虚拟现实(VirtualReality,简称VR)是由美国公司的JARONLANIER1989年创造的一个新词。他通常是指采用头盔显示器、数据手套等一系列新型交互设备构造出的用以体验或感知虚拟境界的一种计算机软、硬件环境,拥护使用这些高级设备以自然的技能(如头的转动、身体的运动以及人类自然语言等)向计算机发送各种指令,并得到环境对用户视觉、听觉、触觉等多种感官信息的实时反馈。
虚拟现实不是一种真实的世界,而是一种虚假的,可交互的环境,人们可使用计算机等高级设备融入到虚拟的情境中去,行动自如地观察环境的全部或者局部乃至细节。透过外在的现象来总结,虚拟现实就是抽象的、复杂的计算机数据在空间上表示直观的用户熟悉的事物的一种技术。是一种高级的人机交互活动。虚拟环境通常是由计算机生成并控制的,使用户身临其境地感知虚拟环境中的物体,通过虚拟现实的三维设备与物体接触,从而真正地实现人机交互。可以说人处在虚拟环境之中跟现实环境是没有差别的[7]
4

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
虚拟现实在很大程度上基于计算机图形学技术发展而来。计算机图形学的任务是在计算机上生成看起来像真的的,动起来像真的图象,而用户通过显示器观看计算机生成的图象所构造出来的世界景象。132虚拟现实的特征
VR技术的发展始终围绕它的三个特征而前进,即沉浸感、多感知性、交互性。这三个重要特征与其相邻近的技术(如多媒体技术、计算机可视化技术等区别。
1)沉浸感
指计算机生成的虚拟世界能给人一种身临其境的感觉,如同进入了一个真实的客观世界;用户感到作为主角存在于模拟环境中的真实程度。理想的模拟环境应该达到使用户难辨真假的程度。
2)多感知性
指除一般计算机所具有的视觉感知外,还有听觉感知、触觉感知、运动感知,甚至还包括味觉、嗅觉、感知等。理想的虚拟现实应该具有一切人所具有的感知功能。
3)交互性
指人能够很自然地跟虚拟世界中的对象进行交互操作或者交流;用户对模拟环境内物体的可操作程度和从环境得到反馈的自然程度[8]
因而可以说,虚拟现实可以启发人的创造性思维。
虚拟现实的关键技术主要包括:动态环境建模技术,实时三维图形生成技术,立体显示和传感器技术,应用系统开发工具,系统集成技术。
1.4本文的主要工作
在对本选题的研究过程中,我深入地研究了虚拟现实技术,对各种三维建模技术、虚拟现实交互技术进行了比较分析,并以浙江科技学院为例,实现了校园环境的虚拟漫游。具体地说,本文的工作主要有以下几方面:
1)研究了现有的构建虚拟现实的语言,确定了以VRML语言为基础技术构造虚拟系统的解决方案。
2)虚拟校园场景建模;选择了用3DSMAX来进行模型的创建与修改活动。3)研究了VRML造型节点和编组节点技术,实现了对复杂场景数据的有序组织。采用3DMAXVRMLPad实现虚拟场景对象的建模、添加节点、校验和测试。
4)虚拟校园漫游交互设计,探讨了基于VRML内建感知器的交互,实现了视点的控制和部分的动画交互。
5

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
5)虚拟校园漫游系统的优化。6)设计并实现了一个虚拟校园。
本文通过对实际操作中的一些过程和设计的总结,并在此基础上,充分描述VRML语言和相关软件的使用和方法。
1.5论文的主要结构
本文共分6章,用来研究和探讨基于VRML技术构建虚拟现实系统的关键技术。
第一章对虚拟现实技术的研究现状及发展方向作了概要性的介绍;第二章主要介绍了系统的主要结构框架和系统开发的相关工具。提及了系统设计开发流程。也探讨了怎样利用其他相关软件与VRML结合设计与开发的问题。
第三章主要研究虚拟场景对象的建模、纹理贴图、模型对象的优化;VRML构建虚拟场景的方法进行了研究,同时还对场景外观、场景优化进行了讨论。
第四章研究了人与虚拟环境对象的交互方法;第五章介绍了设计时所做的系统优化的工作与方法。
第六章总结了本文所做的工作,分析其成功与不足,并对未来工作做了进一步的构想。

6

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
第二章系统总体设计
2.1系统的总体结构
为了保证整个场景能顺利流畅地在普通高档微机上运行,同时达到实时漫游的功能以及安全可靠,按照任务侧重点的不同,可将整个系统分解成场景模型子系统、漫游引擎子系统、渲染输出子系统等,他们在功能上相对独立,通过数据接口相互联系。系统总体结构如图2-1所示:


纹理材质
总平面
建筑建模
三维场景建
二次建模
场景调度

场景数据库

碰撞检测场景渲染
地形匹配

输出设
2-1虚拟校园漫游系统总体结构图

场景调度:在建模工作进行之前,首先要对所建场景进行一个全面和完整的分析。基于场景分析的基础上,我们制定了校园建模的计划。再采取各个击破的原则,分别对各个建筑群建模,完成场景的总体调度。
碰撞检测:碰撞检测是构造虚拟漫游系统不可缺少的一个重要部分,它可以使用户以更自然的方式与三维场景中的对象进行交互。如果没有碰撞检测,当一个对象碰到另一个对象时,往往会“穿透而过”,而不会产生碰撞的效果,这在现实中是不存在的。因此,构造虚拟校园漫游系统时,必须能够实时、精确地判断场景中物体之间是否发生碰撞。虚拟校园漫游场景中动态物体与静态物体之间或者动态物体与动态物体之间的交互基础就是碰撞检测。
7

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
地形匹配:地形对漫游的真实性和系统运行的实时性有重要影响。地形对象模型是虚拟校园模型系统的基础,是布置地物对象模型的依据。地形对象三维模型的建立是开发虚拟校园必不可少的一个关键环节,对其它虚拟系统同样如此。三维场景建筑建模:楼房是虚拟校园漫游系统中的主要景观,也是建模的重点。所以,三维场景建筑建模是系统真实性的最真实的反映。三维场景建筑建模是对校园景观中的各个建筑物的三维再生和再创造,用于导入虚拟场景中。
2.2开发工具
221VRML
VRML是一种用于对三维虚拟场景进行建模的描述性语言。VRML在虚拟现实技术的发展过程中脱颖而出,并已被广泛应用的虚拟现实建模语言。
VRML不完全等同于虚拟现实,但对虚拟现实技术产生了重要的影响。典型的虚拟现实意味着用户要借助复杂设备进入虚拟环境,获得沉浸式体验,并与环境进行交互。而VRML则作为WEB上一种描述性的虚拟环境的造型语言独立存在,它与设备无关。
虽然VRML所构造的虚拟环境相对简单,类似于嗅觉、味觉以及表面硬度、表面触觉等重要虚拟特征还没有涉及,但是构造一个基本的虚拟环境所需要的语言,工具以及实现已经在VRML2.0中得到充分体现。
作为单纯的三维造型和渲染工具,VRML提供的技术能够把二维、三维、文本以及多媒体素材有效地集合在同一个虚拟环境当中,从而使用户沉浸其中。随着INTERNET以及三维WEB技术的不断进步,VRML将进一步推动网上交互式三维应用的蓬勃发展。
VRML建模语言有以下主要技术特征:
1C/S工作方式。其中服务器负责协调绝大多数防真活动,提供VRML件极其资源,并维护环境中所有虚拟对象的状态。
2)独立平台。VRML浏览器解析VRML文件描述虚拟场景,而浏览器由本地平台提供。实现了平台上的独立性。
3ASCII文本格式的描述性语言。VRML是用的是ASCII文本格式的三维场景式描述语言进行编程。这在保证各种平台通用的同时,也降低了数据的通讯量,从而提高网络的传输速度。
4)增强了静态场景。VRML2.0新增的一些功能可以使三维静态场景的真实感更强。
5)可交互性与动画。VRML2.0设置的接触传感器、环境传感器、感知传感器以及碰撞传感器可以对三维造型进行实时交互仿真。

8

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
6)三维视听效果。通过SOUND节点,用户可以具体设置声音的大小、音源的位置、传播方向等空间属性。7)实时3D渲染。
8脚本支持。Java或者JavaScript支持。VRML通过Script节点引入JavaJavaScript语言编写的脚本程序来扩展其功能。
VrmlPad工作界面(如图2-1所示)是标准的Windows应用程序窗口,有标题栏、菜单栏、常用工具栏、系统左右两个主工作区以及状态栏组成。系统右工作区主要用于编辑Vrml场景造型节点。其用法非常简单,工作区中任意输入一个Vrml规则允许的合法名称的首字母,VrmlPad将自动弹出一个滚动列表,列表中包含了所有以该字母开头的系统可用的名称和相关的名称,用户只需要选择其中一个合适的名称单击或者回车就可以,非常方便。
2-1VrmlPad工作界面


VrmlPad具体有主要功能特点:
1)可编辑本地或者网络上的远程文件、可压缩存储;
2)支持高级查找、使用书签、分色显示、自动侦错等编辑功能;3)支持多步取消和重复操作;4)采用树形结构显示场景构造;5)支持在浏览器中对场景的浏览;6)有功能强大的软件发布向导;
7VrmlPad环境中可以处理和执行其他语言编写的外部应用程序;8)提供文件列表功能,方便用户管理系统目录[6]
9

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
2223DStudioMax技术
3DSMAX是使用最广泛的专业3D建模,动画和图像制作软件。3DSMAX通过构建虚拟的3维世界,来表现真实现实中的存在。它能创建耀眼夺目的视觉效果,越界引擎和进行视化设计。3DSMAX有着悠久的发展历史,拥有世界上最多的3软件用户群体,以及大量可提高其软件性能的内部和外部插件。
3DSMAX的制作一个产品造型的基本流程是:建立模型,3DSMAX“创建”和“修改”几乎是不可分割的,可以用二维图形经过旋转、放样、挤压等修改命令来使之转换成三维模型,直接拉出几何体后一般也要用修改工具进行修改才能完成建模工作。
因此,在本课题的校园建筑中,我们采用3DSMAX来进行模型的创建与修改活动。在教学楼的模型创建过程中,事先实地考察,获取相关结构和风格的资料(以照片为主要材料)。再通过参照这些资料,对建筑物进行建模仿真。
3DSMAX中可以通过组合建模,生成不规则的、复杂的几何形状和设备。3DSMAX生成的模型,能通过“File(文件”——“Export(导出”菜单,VRML的文件格式输出,通过这种方式使3DSMAXVRML二者之间建立联系。所以可以在3DSMAX中建立好场景的基本模型,以简单的门牌为例子,输出的VRML节点如下:
DEFmenpaiTransform{
children[Shape{
appearanceAppearance{materialMaterial{
diffuseColor0.58820.58820.5882ambientIntensity1.0specularColor000shininess0.145transparency0}
textureImageTexture{url"menpai.jpg"}
}geometryBox{size90201}}]}
10

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
其中TranslationVRML中的标准节点,它在XYZ轴上控制物体的位置。Children域中定义了Shape,它是一个长宽高分别为90201Box。在对这个Box的其他属性设置中,我们发现,在导出的文件中,VRML自动地记忆在3DSMAX中材质、灯光、透明度等数值。另外我们还添加了对Box的纹理贴图。求得最真实的效果。最后门牌的实例效果如图2-2所示:

2-2门牌的纹理贴图


223JavaVRML结合
尽管VRML是一个有力的3D语言,但它更大的功能来自于它能够用程序语言去建立复杂、交互界面,这个程序语言就是JAVA语言。JavaVRML相互补充,Java主要讨论对象的行为,但很少涉及外部特征,而VRML则注重于外表,不太考虑对象的行为。可以说,VRML所战线的正是JAVA要做的。随着网络技术的发展,JavaVRML的关系将会越来越密切。
VRML2.0提供了两种扩展VRML和外部程序实现连接的机制,即Script节点和外部编程接口。
通过扩展Script节点。VRMLScript节点是一种控制传感器和内插器的节点。通过它可以定义和改变场景中对象的外观和行为。Script节点可包含一JAVA文件,当Script初始化时调用。Script节点可以将事件和节点从VRML传递到JAVA,而命令从JAVA传递到VRML[9]
通过VRML浏览器外部编程接口EAI进行编程,允许VRMLWeb页上的其他对象进行沟通。EAI提供了更为灵活的连接外部编程环境的途径,它可以提供强有力的方法来表现交互式网络分布式多媒体应用。
2.3系统开发流程
系统的开发流程关系到该系统的开发时间和有效程度。为了合理的开发虚拟校园漫游系统,该系统设计流程图基本如图2-3所示:

11

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
三维建模
解决基本的建筑物和地理情况问题。使虚拟校园有一个基本的初体的模型。
在已经建好的模型的基础上进行纹理贴图。使校园更加形象生动,更接近现实生活中的校园。
纹理贴图
空间漫游
浏览者可以通过桌面系统进行对校园的浏览和观察。
人机交互
碰撞检测使该系统更加真实。不同的浏览方式适合不同的浏览者的习惯。2-3虚拟校园漫游系统设计流程图


在三维建模之前,还必须对校园环境进行分析,选取最合适的建模方案。在三维建模完成之后,还要考虑系统的可行性,对系统作一些必要的优化。
2.4本章小结
本章主要介绍了虚拟校园漫游系统的总体结构和开发工具。包括VRML技术特征、VRML浏览器的种类及其各自的特征、VRML中的一些重要的概念、VrmlPad功能特点、VrmlPad工作界面。明确了利用3DStudioMax软件建立各种三维模型,再导出生成.wrl文件,编辑他们在虚拟现实世界中的位置和关系,形成一个完整和同一协调的虚拟世界。也可以利用Java等一系列的脚本完善和增强VrmlPad功能。同时也初略介绍了虚拟校园漫游系统的开发流程和相关问题。
12

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
第三章虚拟校园场景建模
3.1场景建模
311场景分析
在建模工作进行之前,首先要对所建场景进行一个全面和完整的分析。对于本系统中的校园场景,做了如下的分析。
1)从建筑物的类别上来分:
浙江科技学院分为五个建筑群,分别为A教学楼区、B教学楼区、C教学楼区、图书馆(大门)、行政楼。
2)从地理位置的分布上来看:
浙江科技学院校内河把学校一分为二,分为南北两部分。南部分有A教学楼区、C教学楼区、图书馆(大门)、行政楼。北部分包括A教学楼区、B教学楼区与情人坡、小山等景观性物体。312制定计划
基于场景分析的基础上,制定了校园建模的计划。采取各个击破的原则,分别对各个建筑群建模。从地理位置上来看,为了符合人们浏览的顺序,首先从大门(图书馆)开始建模,接下来为其他部分。各个建模顺序如下所示:
1)图书馆(大门);(2)行政楼;(3C教学楼区;(4B教学楼区;5A教学楼区;(6)其他。313建模工具选取
三维建模是VR系统开发的关键,不借助专业VR建模工具很难完成。VRML3DSMAX是常用的两个建模工具。VRML采用ASCⅡ文件格式描述三维场景和交互过程,建立的三维场景文件,要经过浏览器插件解释后才能显示出来。节点是VRML文件的核心和灵魂,在VRML创造的虚拟场景中,任何对象都用节点表示。具体来说,可以通过标准形状节点和高级形状节点,创造虚拟环境中的静态虚拟对象;通过各种动态造型节点和时间传感器节点,实现动态建模;通过传感器节点和视点控制,使系统能与用户交互。
13

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
314地形地貌的建模
地形对象模型库在虚拟环境中分量很大,通常其多边形数占系统总多边形预算的1/3左右,它对漫游的真实性和系统运行的实时性有重要影响。地形对象模型是虚拟校园模型系统的基础,是布置地物对象模型的依据。地形对象三维模型的建立是开发虚拟校园必不可少的一个关键环节,对其它虚拟系统同样如此。
在实际操作中,主要利用3DSMax中的Veiws/ViewportBackground把翻拍所得的地形图导入到top视图中,然后根据形状勾画出平面图形,再用Extrude功能使之成为三维图形。通常,地形是不规则的,如草地高低不平,需要根据实际情况进行拉伸。如地形复杂,则往往需要增加面片,然后再拉伸,直至达到预期的目标。最后,把所有制作好的模型导入到同一个文件里,进行总体规划排列,形成一个完整的三维场景。地形建模结果如图3-1所示:
3-1虚拟校园地形建模

315建筑单体的建模
楼房是虚拟现实(如虚拟城市,虚拟校园中的主要景观,也是建模的重点。作者以航拍照片的平面图作为参考,将图扫描到计算机中,在3DSMax中作为底图描出楼房底部轮廓线和具体位置,由于平面图没有提供高度信息,楼房高度采用现场测量数据,少部分参照数码相机拍摄的照片近似地获取屋顶、阳台这样的细节也要参照相片如实建模。
14

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
为了能够多人协调作,同时使系统具有扩展性,事先要约定好接口规则,允许分别创建多个小模型并将它们结合起来。这样,在为特定需求建模后,能把这些独立的三维模型准确地放入校园中,扩大校园的范围。还可以满足人们漫游整个校园或欣赏单个建筑的不同需求。这种工作方法也为今后将虚拟现实技术运用于城市(区域规划、城市设计、建立更大规模的虚拟环境提供了一种可能。
根据系统需要,虚拟校园主要是展示教学区,像临时工棚或简易房屋就没有必要建模。本系统模型大部分都基于3DSMax的模型设计,在3DSMax中完成,构成物体三维图形的基本要素是点、线、面。较复杂的建筑,通过编辑减少不需要的多边形,合并面,消去T(即两个共面多边形,其相交的顶点没有重合来精简模型。对于一般建筑物,表现出模型的基本轮廓和结构,反映出必要的形体变化关系即可。同时可根据虚拟现实系统的要求,调整所建模型的参数以获得不同分辨率的模型,以适应虚拟场景实时显示的需要。
由于三维虚拟校园的设计非常复杂,楼的形状多样、比较复杂,不同的楼要采用不同的建模技术。因此,先把校园内的建筑物进行编号,规定好模型的名称和存储路径,同时把建筑物按区域不同分割成4个部分进行建模,每部分都有自己的材质和贴图。三维建模包括对象级建模、布尔建模、网格对象建模、面片建模等等。对于简单建筑物主要采用对象级建模,用几个方块就可以实现,用3DSMaxcreate面板中的shape。工具栏上的line按钮,根据楼的形状尺寸先在top视图中勾画出平面图,再用修改器modify中的Extrude,wave,bend等进行修改,获得准确的形状模型,对于复杂形状的楼,需借助更复杂的技术才能制作。复杂形状的楼的设计往往离不开复杂曲线和曲面的设计,主要是曲线的设计,经常要用到的Bezier曲线,B样条曲线和NURBS曲线。对这三种曲线进行三维拓展就可以得出相对应的曲面,同时也用到了布尔建模。

15

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
单体建筑A的模型如图3-2所示
3-2A教学楼区模型


单体建筑B的模型如图3-3所示
3-3B教学楼区模型

16

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发

单体建筑C1的模型如图3-4所示
3-4C1教学楼区模型


单体建筑C2的模型如图3-5所示
3-5C2教学楼区模型

17

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发

单体建筑图书馆的模型如图3-6所示
3-6图书馆模型


单体建筑行政楼的模型如图3-7所示
3-7行政楼模型

18

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发

3.2场景对象优化
321虚拟场景的二次建模方法
建模要达到理想的效果,关键是取决于真实度和面片组合复杂度的矛盾。决了这一个矛盾,就会取得良好的网络传输效果和虚拟现实的真实程度。
二次建模的思路是,第一次建模,我们建立一个精细的模型,不管从建筑物细节上、纹理图片质量上,都力求最佳效果。达到精益求精的地步。然后对这些所需的纹理进行渲染输出,包括一些建筑物的侧面,表面等表现力较强的纹理。再对原结构进行分解,用外轮廓线加拉伸或者放样生成片段数为一的几何体,后,用包含细节的纹理映射到简单几何体上,完成模型的建造,这些步骤就是二次建模的主要过程。

单体建筑C1二次建模的模型如图3-8所示
3-8C1二次建模模型


19

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
单体建筑C2二次建模的模型如图3-9所示
3-9C2二次建模模型


单体建筑行政楼二次建模的模型如图3-10所示
3-10行政楼二次建模模型


322建模环节的其他优化方法
1应用实例复制:实例对象在VRML中只定义一次,再通过在场景中多次使用这样的几何体,而文件的大小不会增加。
2)删除和隐藏场景中的不可见和细微细节。这种方法可以简单得降低场景的复杂度。
20

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
3)使用多细节层次模型技术。根据物体和观察者的距离选择同一对象的不同精细度的版本。合理设置VRMLExport对话框参数。
4)使用面片模拟植物造型。目前关于植物的造型主要有以下两种方法,一种是通过Billbord贴图来实现。一种是用十字交叉法,在交叉的两个平面上贴上相同的透明贴图,这样就解决了Billbord树木只有一个视角的问题,真实度得到了提高,但是模型复杂度有所上升。
5)使用LOD表达复杂结构模型。虚拟校园中有许多复杂模型必须用LOD来表达,以使运行系统中的多边形数控制在预算之内,有利于提高运行系统的实时性。
6)用纹理代替多边形表达结构细节。纹理映射能够在不增加多边形数目的前提下提高场景表达的详实程度。用LOD模型配合一定细节程度的纹理来代替多边形模型会大大降低系统的绘制负载。
7)删除冗余多边形。删除数据库中的冗余多边形可以在一定程度上减少系统中的多边形数量。些多边形可能是模型内部的细节结构,某些多边形的背面可能是位于某平面上的模型的底面,如地面上内部不需漫游的房屋的底面等。
8)移除多边形的背面。虚拟校园环境中组成绝大多数模型的多边形都是单面可见。Creator能自动剔除多边形的背面而仅显示其前面。虚拟校园环境中除构成树木模型之外的绝大多数多边形都是单面可见的。为减轻系统的运行负载,提高渲染速度,如果多边形是单面可见,应确保其状态没被设定为RenderBothSidesVisible[12]
3.3场景外观
VRML纹理映射是通过数字纹理(又区分为图象纹理、象素纹理、电影纹理)根据几何体的外形,按照一定规则映射到几何造型或者文本造型的表面。纹理映射是包括VRML在内的各种三维技术广泛使用一种增效渲染方法,该方法通过在造型表面映射具有微观细节的数字纹理,极大地改善了单纯使用Material接点进行造型材质渲染所呈现的视觉宏观效果。
VRML纹理映射对于场景对象的真实程度和精简程度都有着很大的影响。331纹理种类
VRML纹理映射使用Appearance节点的texture域或者textureTransform域进行;对于VRML以点、线、面方式构造的复杂造型,还可以使用TextureCoordinate节点进行精确纹理映射。
纹理种类可分为以下几种:
21

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
1)图象纹理(ImageTexture
图象纹理ImageTexture节点用于设置一个图象纹理和将该纹理影射至几何体表面时所需要的参数图象纹理可使用数字图象文件格式有JPEGGIFPNG文件。
2)象素纹理(PixlTexture
PixlTextureImageTextureMovieTexture)的使用方法不同,它是利用image域将映射纹理直接存放在VRML文件中。由于不再需要调用外部纹理文件,因而可以极大地节约网络下载时间。PixlTexture节点以显示象素数组的形式定义了一个二维象素纹理,同时指定将该纹理映射至几何体表面时所需要的参数。
3)电影纹理(MovieTexture
电影纹理MovieTexture用于设置一个电影纹理以及将该纹理映射至几何体表面时所需要的映射参数和控制播放参数。332模型纹理处理
只有物体的形状是不够的,要使物体具有真实感,还需设计和制作物体的属性和表面图案,如材质、贴图,最后把这些内容有机的结合起来就可以制作出一个具有强烈真实感的三维物体模型。
建模后,要对形状模型的每一部分分配材质和贴图。灵活运用贴图可以带来很多方便,建筑中的三维模型,如门窗、树木等原本立体效果不是很强、精度要求不是很高,可以用贴图取代立体图案的制作,既简化了模型的设计,又不会对视觉产生不良的影响。树木在VRML中的的贴图如图3-10所示:
3-11树木在VRML中的纹理贴图

22

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
通常在制作树木的时候,由于树木叶子的面片数过多,不可能一一去细化制作。一般都用一张贴图来代替,但是对于贴图也存在着一定的要求,在制作过程中,其中的GIFPNG这类透明贴图在对树的制作是简单方便的。为了取得更好的效果,我们采用Billboard节点来适应不同角度的树的观察。这样浏览者可以在不同的角度都可以看到树木的整体效果。

树木纹理贴图代码如下:Background{
skyColor111}
Transform{childrenBillboard{children[Shape{
appearanceAppearance{materialMaterial{}textureDEFshuImageTexture{url"shumu.gif"}}
geometryBox{size10201}}]}}
纹理是由材质、纹理和色彩组成的,需要运用图像处理技术来实现。纹理制作中要运用大量的贴图,贴图图片的获得可以通过多种手段,其中主要是用数码相机实地拍摄。拍好的图片一般不能直接作为贴图,因为拍摄时角度存在些偏差、模糊等,要进行预处理,包括灰度级修整、图像平滑、图像锐化处理、图像分辨率提高、图像角度修正等。最后,把表面图案和形状有机的结合起来,就构成了教学楼的三维模型。
由于现实中的楼房外观是复杂的,需把模型进行分解,对每一部分采用不同的贴图,用多种贴图真实地表现楼房景观。对于相似的建筑,赋材质时可利用平铺图片来简化贴图的处理。贴图最终是通过指定贴图坐标贴到物体表面上去的。贴图坐标要求准确,否则贴图将不能正确显示。需要注意的是,对于用布尔建模得到的模型应先对原模型分配材质,再做布尔运算,否则会扰乱贴图。
23

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
各部分模型通过在3DSMax平台上的三维建模、材质分配和贴图等的处理,再把各个部分根据实际情况组合起来,最终就完成了校园完整的三维建模设计。3DSMax中,通过旋转、放大、缩小可以在任意角度对其进行观察,真正达到了形象逼真的效果。
3.4本章小结
本章主要讨论虚拟校园的建模工作。在建模过程中,使用3DMax软件辅助建模。分析了场景建模的步骤和VRML中造型节点对建模的作用。另外,对于复杂的多边形场景的建模,我们也提出了一些优化的方法。
介绍了VRML中纹理的种类,使用方法和优化的方式。只有物体的形状是不够的,要使物体具有真实感,还需设计和制作物体的属性和表面图案,如材质、贴图,最后把这些内容有机的结合起来就可以制作出一个具有强烈真实感的三维物体模型。
建模后,要对形状模型的每一部分分配材质和贴图。灵活运用贴图可以带来很多方便,建筑中的三维模型原本立体效果不是很强、精度要求不是很高,可以用贴图取代立体图案的制作,既简化了模型的设计,又不会对视觉产生很多的影响。
所以在具体的操作过程当中,合理地使用纹理贴图能够达到事半功倍的效果。



24

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
第四章虚拟校园漫游系统的交互
虚拟校园漫游系统的交互是通过VRML的交互机制来实现的。具体来说,交互是通过节点来实现的。节点的交互就是一个节点某状态的变化能引起另一个节点状态的变化。VRML中将状态的变化一记为一个“事件”,代表输入的称为“事件输入”代表输出的称为“事件输出’引起其他节点变化的节点为“源节点’发生变化的节点为“宿主节点”。“源节点”发出“事件输出’,,“宿主节点”接受“事件输入”,节点的任何一个参量都可能成为一个“事件’。
VRML使用的交互功能,浏览者可以根据需要感知VRML场景、改变场景中的造型状、触发一个事件或者开始一段动画。VRML通过一系列交互传感器在三维环境和用户之间感知交互。
4.1VRML传感器节点简介
VRML中的交互传感器分为接触传感器、环境传感器、感知传感器以及碰撞编组4类。411接触传感器
接触传感器(TouchSensor)节点用于检测用户基于指定设备(如鼠标、操纵杆)的动作,并将其转换后以各种形式的事件加以输出。TouchSensor节点可以作为任何边组节点的子节点使用,并感知用户对该编组节点中所有造型的指定动作。
TouchSensor节点就可以控制门窗的活动动画,当观察者点击TouchSensor物体所指定的门窗时,门窗即可开始自身具有的动画。接触感知器TouchSenso:实现开门交互。当我们漫游场景时,若要进入大楼参观,较自然的交互方式是推门而入。实现这种交互控制可通TouchSensor来实现。TouchSensor是一种接触感知器,鼠标点击后可使物体绕Y轴转动。
场景中,当鼠标指向并保持指向状态、选取门造型后,单击后释放,这时isActiveTRUE该值送TimeSensor使其处于使能状态,同时输出事件关键值Key供朝向插值器(OrientationInterpolator使用。朝向插值器按预设定进行插值,输出转动角度到门节点。本例的TimeSensor节点由于其默认Loop域值为FALSE初始状态下场景动画不会自动发生。动画自动运行一个时间周期后停止,类似于在一个存在摩擦阻力的环境中,旋转的门会自动停止[13]
25

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
412基于ProximitySensor的交互方法
ProximitySensor节点来感知观看者的接近,当观看者接近部分门窗时
可以感知并且触发一段动画,门窗即被打开,这样浏览用户就不必手动操作这些门窗了,大大增加了VRML场景的亲和性。413环境传感器
PlaneSensorCylinderSensor、球体传感器SphereSensor
1)平面传感器PlaneSensor
平面传感器PlaneSensor节点用来检测用户操纵指定设备的动作,并将指定设备的选取,移动解释为造型在平面传感器PlaneSensor节点所在局部坐标系XOY平面上的平移。
2)圆柱体传感器CylinderSensor
圆柱体传感器CylinderSensor节点用来检测用户操纵指定设备的动作,并将该动作转换成为造型在围绕以某根轴为旋转轴的一个圆柱面上所产生的旋转,使浏览者像是在围绕着一跟圆柱体上进行观察。
3)球体传感器SphereSensor
球体传感器SphereSensor节点用来检测用户操纵指定设备的动作,并将该动作转换成造型在围绕以某一点为中心的一个球体的表面上所产生的旋转。414碰撞编组
碰撞编组Collision节点用来从浏览者所在的方位检测用户何时与该组中的任何子节点造型发生了碰撞。Collision节点作为碰撞编组节点,既可以单独使用,也可以作为其他编组节点的子节点使用。Collision节点兼具编组和感知传感双重功能。
4.2虚拟校园漫游系统的交互
在虚拟校园场景中,有一些活动的事物,比如说校车、喷泉等一些复杂事物。这些活动的事物大大提高了虚拟校园场景的生动性和亲近性。使整个环境都具有灵性。
如何在虚拟校园场景中添加这些动画交互是一个十分重要的急需解决的问题。
26

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
在设计整个虚拟校园场景中,对于这类运动的事物我们一般采取两种方法。一种是运用电影纹理(MovieTexture);一种是运用VRML中设置路径动画。因此,在校车的动画制作过程中,我们在VRML中设置路径动画。其代码如下所示:DEFxiaocheTransform{
children[
DEFxiaoche-TIMERTimeSensor{loopTRUEcycleInterval20},DEFxiaoche-POS-INTERPPositionInterpolator{key[]
keyValue[
]},
DEFxiaoche-ROT-INTERPOrientationInterpolator{key[]
keyValue[
]},
DEFcheTransform{translation000children[
Transform{
translation000children[Shape{
appearanceAppearance{materialMaterial{
diffuseColor0.80.80.8}}
geometryBox{size150015003000}}]}]},]
ROUTExiaoche-TIMER.fraction_changedTOxiaoche-POS-INTERP.set_fraction
ROUTExiaoche-POS-INTERP.value_changedTOxiaoche.set_translation
27

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
ROUTExiaoche-TIMER.fraction_changedTOxiaoche-ROT-INTERP.set_fraction
ROUTExiaoche-ROT-INTERP.value_changedTOxiaoche.set_rotation}
key[]keyValue[]中输入具体的值就可以实现校车的动画。这段代码有两个动画作用,一个是位置的变化,另一个是方向的变化。
还有一种方法可以在VRML中实现,在3DMAX中直接做好路径动画,然后导VRML中,也可以直接生成动画。
4.3虚拟校园漫游系统的视点控制
431虚拟校园系统的视点控制
系统视点控制使用vrmlViewpoint节点进行的。由此设置浏览者在虚拟校园环境中的观察位置、空间朝向以及视野范围等参数。
本系统视点设置如下:Viewpoint{}
由于场景规模巨大,所以视点的值有些大。但这并不影响最终的观察效果。为了精简系统,所以在系统的视点控制中,我们只简单地设置了一个视点,其实VRML中,还可以设置多个视点。上面的视点是从正大门开始观察的视点。视点控制如图4-1所示:
position-150080030000
4-1虚拟校园漫游系统视点


28

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
432虚拟校园系统的导航控制
虚拟场景中,NavigationInfo导航信息节点是用来提供浏览者化身如何使用当前视点进行系统导航。本系统导航设置代码如下:
NavigationInfo{type["FLY"]speed1000}
参数值的不同,浏览效果也不尽相同。本系统使用的是FLY浏览模式,当然不同的NavigationInfo节点执行之后是有着不同的效果。修改type模式和speed参数都能达到不同的效果。每种方式都有自己不同的浏览效果。
将漫游速度(speed)值设置为0.0时候,漫游者将无法行走,只能对造型实施旋转以及改变视角等操作。当然,不同的速度设置都有自己不同的浏览效果。用户或者浏览者可以根据不同的需求或喜好进行设置和浏览。
4.4本章小结
本章讨论了在虚拟校园场景中交互性的重要性。并且列举了VRML中传感器的类型和传感器节点的使用规则与方法,具体到参数的设置。VRML中的交互传感器分为接触传感器、环境传感器、感知传感器以及碰撞编组4类。了解VRML视点控制。Viewpoint节点用来设置浏览者在VRML虚拟空间中的观察位置、空间朝向以及视野范围等参数。
29

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
第五章虚拟校园漫游系统的优化
一个比较成熟的虚拟校园漫游系统,其代码必定是纷繁复杂的。动辄成百上千行。一个完整的虚拟场景中也少不了各个模型的建立。一个真实的建筑物群体中也需要精细的纹理贴图。所有的这些加起来,就会使得一个VRML文件显得异常庞大。所以,为了系统的健壮性和可行性,对系统进行优化势在必行。我们将从不同的角度来进行系统优化的分析和实验。
51碰撞检测技术
碰撞检测是构造虚拟漫游系统不可缺少的一个重要部分,它可以使用户以更自然的方式与三维场景中的对象进行交互。如果没有碰撞检测,当一个对象碰到另一个对象时,往往会“穿透而过”,而不会产生碰撞的效果,这在现实中是不存在的。因此,构造虚拟校园漫游系统时,必须能够实时、精确地判断场景中物体之间是否发生碰撞。虚拟校园漫游中动态物体与静态物体之间或者动态物体与动态物体之间的交互基础就是碰撞检测。
在实际的设计过程中,碰撞参数一般都用avatar来进行参数的设置。也可以用Collision节点来实现碰撞效果。在虚拟校园中,由于各个建筑的模型大小不一,所以本人拟采取的方法是用FLY的浏览方式,然后再对avatar的参数进行设置。根据实际情况和浏览的用户体验情况,把碰撞值设置得较小。虽然会有穿透的现象发生,但对于整个系统运行起来还是顺畅可行的。
52层次细节技术
层次细节LODLevelofDetail)技术用一组复杂程度(常常以多边形数或面数来衡量)各不相同的实体细节等级模型来描述对象,并在仿真过程中根据一些客观标准在这些LOD模型间进行切换,从而能够实时改变场景的复杂度。视点变化时,所选取的细节等级模型各不相同。当视点离物体较远时,调用较粗略的模型,当视点离物体较近时,则选用描绘细致的模型。
在传统的图形系统中,三角面片是最通用的绘图元语。随着描述场景中几何模型的三角形数目的增多,所绘制的图像质量越来越高,但是绘制速度也越来越慢,从而形成了一对矛盾。一般来说,图形渲染速度与模型中的三角形数目成反比。尽管图形渲染系统的性能在近几年有明显提高,但总有一些场景过于复杂,
30

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
不能实时渲染。而实时渲染是虚拟现实系统的一项基本要求,LOD就是较实用的方法来解决这个矛盾问题。
在虚拟校园的设计与开发过程当中,由于场景的巨大,所以在设置层次细节时,本人使用得都是比较大的数值。这样设置的结果就可以达到较理想的范围。
53纹理映射技术
纹理映射(TextureMapping)是一种将二维图像映射到三维几何形状表面的一个映射,使其产生特殊效果或真实感的一种技术。使用纹理映射技术可以避免对场景的每个细节都使用多边形来表示,进而可以大大减少场景模型的多边形数目,提高图形显示速度。
虚拟校园中所使用的纹理是用数码相机拍摄景物表面细节获得的数字图像来离散定义的,之后用3DSmax的纹理工具进行纹理映射和对纹理进行编辑。主要从以下几个方面对纹理数据进行了优化:
(1纹理大小的合理确定。纹理大小应根据图形加速卡性能、运行系统的内存及人的视觉生理特性等合理确定,为有效节省内存,虚拟校园中所用纹理多数512X512'6"或更小,高分辨率的纹理只有当虚拟场景需近距离观看时才使用。
(2采用PHOTOSHOP来处理图象纹理的大小和位置。在数码相机采集来照片素材之后,并不是所有的图像素材都是符合使用要求的,所以这时候就要利用PHOTOSHOP对图像素材拉伸、缩放等变换工具调整图象。以达到最完美的效果。比如在对建筑物的贴图运用中,可以通过拉伸、旋转、缩放、斜切、扭曲等命令编辑图像。
(3子纹理的运用,虚拟校园中有些表面的纹理细节差别较小,如不同路段的路面纹理等,采用子纹理进行处理,既避免了明显的雷同,节省了内存,又方便了文件的调用[14]
54场景消隐技术
在真实感图形生成中,一个重要的问题是:给定视点和视线方向,决定场景中哪些物体的表面是可见的,哪些是被遮挡而不可见的。这就是场景的消隐。有隐藏面消除算法都涉及各景物表面离视点远近的排序。一个物体离视点越远,它越有可能被另一个距视点较近的物体遮挡。因此,消隐可看成是一个排序问题,消隐算法的效率很大程度上取决于排序的效率。消隐算法按其实现方式可分为景物空间消隐算法和图像空间消隐算法两大类,景物空间消隐算法直接在景物空间(摄像机坐标系)中确定视点不可见的表面区域,并将它们表达成同原表面一致
31

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
的数据结构。图像空间(屏幕坐标系)消隐算法则以屏幕象素为采样单位,确定投影于每一象素的可见景物表面区域,并将其颜色作为该象素的显示光亮度[11]
55文件编辑环节的优化
该环节的优化主要是根据VRML的语法特性进行的,可以同时减少网络通信量和浏览器的计算量。首先用VRMLPad打开3DStudioMax导出的.wrl场景文件,检查是否有语法、值类型的错误;提供的域值是否在适当范围内;校验是否有重复的节点定义,是否有不匹配的域名或路由。检查完毕后,通过VRMLPad带的VRML浏览器,可单独预览选定的节点或组进行最后的调试,也可对全部场景实现浏览。
VRML文件的大小不但决定了它在网络上的传输速度,而且还影响着文件装入内存后的浏览速度。下载时间过场、漫游时的画面刷新过低,都将使用户失去耐心,放弃浏览。所以在虚拟校园的设计中,优化VRML文件非常重要。具体如下:
(1代码重用(DEFTUSE:通常在虚拟校园中,会有不少反复出现的物体,如相同建筑模块、树、球场等。这些对象中形状完全相同者,可采用DEF/USE的实例引用法进行复制,能避免出现大量重复的代码。
(2原型(PROTO封装:用原型构造技术(PROTOEXTERNPROTO创建扩展节点。原型(PROTO是一种类型封装机制,利用它可以在已定义节点类型的基础上定义新的节点类型;通过外部原型(EXTERNPROTO还可以跨越因特网引用自定义的节点类型,一旦定义,原型节点类型就可以像内部节点类型一样在场景图中实例化。原型可以在当前文件中定义并使用,也可以在其它文件中定义,即外部原型,外部原型提供了一种使节点类型能够跨越网络的机制,这样可大大减少相同代码的重复编写,为快速建模提供了强大支持;据此,作者对大同小异的建筑,比如学生宿舍、人文群楼与法商群楼等建筑采用原型法(PROTO复制,通过原型定义,可以创建新的类型节点,为架构个性化场景提供了极大方便。
(3采用压缩工具:为了使服务器端的场景描述文件和其他相关文件如图像、声音和视频文件尽快地传送到客户端,获得令人满意的传输速度,除客观的网络速度因素外,应尽可能减小数据传输量。由于3DSMAX并非专门的虚拟现实工具,在将造型保存为.wrl格式时会生出许多冗余数据,因此在设计的最后环节有必要对.wrl文件施行“减肥”术,经压缩后的VRML文件只有原来的1/3,压缩率相当高,而且压缩过的文件不再是文本文件,用普通文本编辑器软件打开后是一片乱码,因而在一定程度上实现了文件的保密。具体可采用gzip压缩工具,也可采用VRMLPad提供的压缩工具实现。[12]
32

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
3DStudioMax导出的.wrl场景文件中,会有一个路由动画(ROUTE)语,这些语句是wrl文件不需要的,所以在文件编辑环节,我们尽可以删除这些语句减少文件大小。
5.4本章小结
本章讨论了对于虚拟校园系统中大场景和复杂文件的优化。通过碰撞检测技术、层次细节LODLevelofDetail)技术可以优化三维场景系统。通过其他手法的优化,节省文件大小和优化系统资源。包括:纹理映射技术、场景消隐技术、文件编辑环节的优化都可以优化系统。



33

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
第六章总结与展望
虚拟现实技术是20世纪末才兴起来的一门崭新综合性的信息技术,尚处于初创时期,远未达到成熟阶段。在虚拟现实的理论、算法和技术实现等各方面都有很多待解决的课题和待发展的领域,它的发展创新的余地很大。虽然目前世界各国都已成功地开发出一些虚拟现实的典型应用项目,但与其它高新技术的应用相比,尚处于应用开发的初始阶段。虽然人们也许不能清楚地设想出,新世纪里虚拟现实出现并普及的新形式,但人们能通过应用媒介形态变化原则和延伸媒介领域的主要传播特性,构想出合理的未来情境。
本文通过对浙江科技学院的虚拟校园为例,对虚拟场景中的三维建模和纹理贴图进行了研究,所做的工作主要有以下几个方面:
1)全面地研究了系统所涉及的虚拟现实技术、VRML技术、三维建模技术等。
2研究了虚拟现实的特征和发展趋势。学习并深入研究了VRML的基本特征、体系结构、场景图、坐标变换、路由和事件、原型机制和脚本语言;分析了各种建模技术在虚拟现实系统中的应用情况及各自的优缺点,研究了基于VRML的三维建模思想,提出了针对复杂建筑物的二次建模方法。并以浙江科技学院校园为例,完成了校园的三维建模工作。
3)设计了虚拟校园系统的总体体系结构
4)在上述研究的基础上,设计并实现了浙江科技学院虚拟校园系统。
34

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发

参考文献
[1]汪成为,高文,王行仁.灵境(虚拟现实技术的理论、实现及应用实用[M].北京:清华大学出版社,1996.15-18
[2]段新昱.虚拟现实基础与VRML编程[M.北京:高等教育出版社,2004.3.
[3]姜学智,李忠华.国内外虚拟现实技术的研究现状[J].辽宁工程技术大学学报,2004(2:23
[4]李志文,韩晓玲.虚拟现实技术研究现状及未来发展[J].信息技术与信息化(人机交互2005(3:9496
[5]李志文,韩晓玲.虚拟现实技术研究现状及未来发展[J].信息技术与信息化(人机交互2005(3:9496
[6]段新昱.虚拟现实基础与VRML编程[M.北京:高等教育出版社,2004.3.[7]MaryLouMaherDesigningtheVirtualCampusasaVirtualWorldComputerSupportforCollaborativeLearning1999.
[8]QiLiuAlexeiSourin.Function-definedShapeMetamorphosesinVRML.NanyangTechnologicalUniversity,Singapore,2005.
[9]黄元芳,王代涵,王一哲.虚拟现实技术与VRML[J].武汉冶金管理干部学院学报13(2:7173
[10]王卫辰,江晓红.虚拟校园三维仿真系统的开发及优化[J].徐州师范大学学报(自然科学版22(3:5657
[11]李欣.基于VRML技术的虚拟校园设计与实现[D].国防科学技术大学研究生院,2005.[12]陈怀友.基于桌面系统的虚拟校园研究与实现[D].哈尔滨工程大学计算机科学与技术学,2006.
[13]王洪.基于虚拟现实的三维漫游技术研究与实践[D].成都:电子科技大学,2004[14]李欣.基于VRML技术的虚拟校园设计与实现[D].国防科学技术大学研究生院,2005



35

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发

首先要感谢我的导师柳杨老师。从选题到撰写的全部工作都是在她的悉心指导和无私帮助下完成的。导师的渊博知识和敏锐的洞察力给我很大的启迪和帮助,在创作上对我有着关键性的指导和提点。文的完成,凝聚着导师的心血。在此论文完成之际,谨向导师致以深深的感激和诚挚的谢意!
同时感谢所有帮助我、关心我的老师、同学和111寝室!

36

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发
附录1虚拟校园漫游系统的部分场景图

1虚拟校园漫游系统之校门场景

37

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发

2虚拟校园漫游系统之A区场景


3虚拟校园漫游系统之B区场景

38

浙江科技学院本科毕业设计论文虚拟校园漫游系统的设计与开发

4虚拟校园漫游系统之C区场景


5虚拟校园漫游系统之情人坡场景
39

虚拟校园漫游系统的设计与开发

相关推荐