青岛农业大学局部校园漫游系统毕业论文.doc_第1页
青岛农业大学局部校园漫游系统毕业论文.doc_第2页
青岛农业大学局部校园漫游系统毕业论文.doc_第3页
青岛农业大学局部校园漫游系统毕业论文.doc_第4页
青岛农业大学局部校园漫游系统毕业论文.doc_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

青岛农业大学毕 业 论 文(设计) 题 目: 青岛农业大学局部校园漫游系统 的研究与开发 姓 名: 学 院: 理学与信息科学学院 专 业: 计算机科学与技术 班 级: 2010级01班 学 号: 20102852 指导教师: 王艳春 2014年06月01日青岛农业大学局部校园漫游系统的研究与开发摘要:随着教育体制的改革,学校招生规模越来越大,管理日趋信息化,各高校之间的竞争也越来越大,使得开发虚拟校园系统成为各高校的必然选择。矚慫润厲钐瘗睞枥庑赖。本文在充分研究碰撞检测、纹理贴图、场景漫游等技术的基础上,以青岛农业大学部分场景为蓝本,以3DMAX为主要建模工具,以Photoshop为图片处理工具,以Unity3D为集成开发环境,搭建了虚拟场景,实现了场景的操作漫游、自动漫游以及飞行漫游,并成功发布为网页版,从而为青岛农业大学数字化校园建设提供了有益的参考。聞創沟燴鐺險爱氇谴净。关键词:虚拟校园; 场景漫游;碰撞检测;数字校园Research and Development of Partial Campus Roaming System of Qingdao Agriculture University残骛楼諍锩瀨濟溆塹籟。Abstract: With the reform of education system, the school recruitment of students scale become more and more large and the competition between universities is more and more tough, which makes the development of virtual campus roaming system a necessary choice for universities.酽锕极額閉镇桧猪訣锥。On the Basis of sufficient research of collision detection, texture map and roaming technologies, this paper built a virtual scene comprised part scene of Qingdao Agricultural University and achieved the virtual campus roaming system including automatic roaming, operation-roaming and air-roaming, using 3DMax as the main modeling tool, applying Photoshop as the image processing tool, and adopting Unity3D as the integrated development environment. Finally, the system was successfully released for the web page, which provides a beneficial reference for the digital campus construction of Qingdao Agricultural University.彈贸摄尔霁毙攬砖卤庑。Keywords: virtual campus; scene roaming; collision detection; digital campus謀荞抟箧飆鐸怼类蒋薔。 30目录1 绪论1厦礴恳蹒骈時盡继價骚。1.1 研究背景及研究意义1茕桢广鳓鯡选块网羈泪。1.1.1研究背景1鹅娅尽損鹌惨歷茏鴛賴。1.1.2研究意义1籟丛妈羥为贍偾蛏练淨。1.2本文研究内容2預頌圣鉉儐歲龈讶骅籴。1.3本文结构安排3渗釤呛俨匀谔鱉调硯錦。2 系统总体设计与主要开发工具4铙誅卧泻噦圣骋贶頂廡。2.1 系统需求分析4擁締凤袜备訊顎轮烂蔷。2.2 虚拟场景总体设计5贓熱俣阃歲匱阊邺镓騷。2.3 系统实现流程6坛摶乡囂忏蒌鍥铃氈淚。2.4 系统实现环境和开发工具的选择7蜡變黲癟報伥铉锚鈰赘。2.4.1建模工具的分析与选择7買鲷鴯譖昙膚遙闫撷凄。2.4.2 集成环境的分析与选择8綾镝鯛駕櫬鹕踪韦辚糴。3 三维场景的构建与优化9驅踬髏彦浃绥譎饴憂锦。3.1 资料的收集与整理9猫虿驢绘燈鮒诛髅貺庑。3.2 模型的建立9锹籁饗迳琐筆襖鸥娅薔。3.2.1 建筑物模型的建立9構氽頑黉碩饨荠龈话骛。3.2.2 树木模型的建立11輒峄陽檉簖疖網儂號泶。3.2.3 其它模型的建立12尧侧閆繭絳闕绚勵蜆贅。3.3 三维场景的制作14识饒鎂錕缢灩筧嚌俨淒。3.4 模型及场景的优化15凍鈹鋨劳臘锴痫婦胫籴。4 漫游系统的实现与项目发布16恥諤銪灭萦欢煬鞏鹜錦。4.1 碰撞检测16鯊腎鑰诎褳鉀沩懼統庫。4.2 漫游的实现17硕癘鄴颃诌攆檸攜驤蔹。4.2.1人工漫游的实现17阌擻輳嬪諫迁择楨秘騖。4.2.2 自动漫游的实现18氬嚕躑竄贸恳彈瀘颔澩。4.2.3 飞行漫游的实现19釷鹆資贏車贖孙滅獅赘。4.3 项目发布19怂阐譜鯪迳導嘯畫長凉。4.4 系统漫游实例展示20谚辞調担鈧谄动禪泻類。5 总结与展望24嘰觐詿缧铴嗫偽純铪锩。参考文献25熒绐譏钲鏌觶鷹緇機库。致 谢26鶼渍螻偉阅劍鲰腎邏蘞。青岛农业大学局部校园漫游系统的研究与开发1 绪论1.1 研究背景及研究意义1.1.1 研究背景近些年来,虚拟现实技术受到人们的普遍关注,它是借助计算机技术来生产非常逼真的三维虚拟环境,并且提供人与物体的交互功能,从而给而人以视觉、听觉、触觉等感官的模拟,能够使用户产生二维动画所不具备的现场沉浸感1。作为一种新兴技术,虚拟现实已在机器人学、认知科学、人工智能、网络技术等多个学科和领域崭露头角,展现了其广泛的应用水平,并向人类展示了其光辉的应用前景2。纣忧蔣氳頑莶驅藥悯骛。虚拟现实技术的不断成熟无形中也带动了虚拟校园的发展。青岛农业大学是一所各方面发展协调的大学,青岛校区更是景色怡人,随着教育质量的不断提高,招生力度也在不断加大,考生的生源地不仅仅局限于本省,而是分布在全国各地。然而,学校的宣传力度还不够,许多考生和家长希望在报考之前能了解学校的整体环境,然而事先到学校考察未免耗费精力财力,虽然有纸质和网页版的文字图片宣传,但是很难将学校的环境和基础设施生动地展现。颖刍莖蛺饽亿顿裊赔泷。1.1.2 研究意义虚拟校园具有形象展现学校的校容校貌、有力提高学校的招生竞争力、增强校园规划管理等功能,故虚拟校园漫游系统的开发具有十分重要的实践意义和应用前景3。濫驂膽閉驟羥闈詔寢賻。1. 展现学校特色青岛农业大学是一所以农学为主要特色的学校,校园景色优美,植被种类众多,校园不仅是我们生活的场所,也是我们学习的课堂和研究的实验场。与其它学校不同,我们的虚拟校园不仅仅以展示学校建筑为主,对于花草树木以及老师带领学生实地学习的场面也要有所体现,让用户体验到学校浓郁的学习氛围。銚銻縵哜鳗鸿锓謎諏涼。2. 提高学校声望地位如今,许多高校已经开发了自己的虚拟校园系统,虚拟校园的作用不仅仅是使浏览者浏览到学校的真实景观,也能够将学校近年来在各方面取得的进步成果展现在用户面前,是学校教育实力的展示,让用户感知到这是一所各方面协调发展的综合性大学。挤貼綬电麥结鈺贖哓类。3. 提高招生竞争力为了争取优秀的考生,各高校都在积极加大宣传力度,但是宣传方式大多还只局限于二维图片和文字。区别于二维图片和文字,虚拟校园可以将学校的现实景观通过网络呈现给用户,不管距离多远,想要报考本校的考生,通过计算机,足不出户就可以游览校园,熟悉校园环境,如同身临其境,可以有力地起到宣传作用,从而提高学校的竞争力。赔荊紳谘侖驟辽輩袜錈。4. 方便校园规划管理随着招生数量的加大,校园建设也在不断完善。旧建筑要翻新,还要建立新的教学区、宿舍区、餐厅等等,校园的扩建实需慎重,然而实景勘测存在诸多不便,且不够直观。通过虚拟校园,可以对学校未来的规划布局进行预设,从而选择最佳建设方案,给决策者提供方便。塤礙籟馐决穩賽釙冊庫。5. 使学生尽早熟悉校园生活青岛农业大学占地1425亩,教学区、宿舍区楼房众多,每年新生入学都有找不到路的情况。虚拟校园不仅能够展示校园全景,是新生尽早熟悉学校布局,还提供自动寻路功能,系统会找到距离目的地的最短路径,漫游过去,为新生引路,让刚刚进入校园的学生尽早熟悉校园生活。裊樣祕廬廂颤谚鍘羋蔺。1.2本文研究内容1. 简单研究了青岛农业大学局部校园虚拟漫游系统的开发背景和研究意义。2.对虚拟校园系统进行了非常详细的需求分析,并在此基础上完成了系统的逻辑结构设计,进而进行了数据采集。仓嫗盤紲嘱珑詁鍬齊驁。3. 研究三维场景建模技术。根据地形、道路、建筑物、树木以及其它辅助设施的不同特点,研究不同的建模方法,以创建占用内存小、效果佳的模型。绽萬璉轆娛閬蛏鬮绾瀧。4. 研究纹理贴图技术。对场景建模中的不同物体采集图像,这里有信息楼图片、化学楼图片、主楼图片、虹子广场等,还有部分从网上下载的材质,利用图像处理软件进行各种处理,方便以后贴放到建筑物上,使其更加真实。骁顾燁鶚巯瀆蕪領鲡赙。5. 研究场景漫游优化技术。包括对模型的处理,代码控制等,尽量创建出真实感强、渲染速度快的漫游系统。6. 研究碰撞检测及交互技术。研究碰撞检测技术,以避免穿墙而过,特别是对不规则物体添加碰撞检测,要添加优化,提高效率。研究基于GUI的交互技术和基于碰撞检测的交互技术,尽量使浏览者感到真实、方便。瑣钋濺暧惲锟缟馭篩凉。1.3本文结构安排本系统以从青岛农业大学虹子广场到信息楼,及周边植物、道路、河流等环境为蓝本,设计开发了一个逼真的、场景渲染流畅的青岛农业大学局部虚拟漫游系统。鎦诗涇艳损楼紲鯗餳類。第一章是绪论,主要介绍了虚拟校园这一课题的研究背景,并对本文的主要研究内容和论文的组织结构作了简要说明。栉缏歐锄棗鈕种鵑瑶锬。第二章从需求分析入手,介绍了系统的总体设计和开发流程,并对开发工具的选择进行了分析论证。第三章详细介绍了不同模型的建立方法、场景的搭建及其注意事项以及模型和场景的优化技术。第四章的主要内容是本系统虚拟场景的漫游实现。首先介绍了漫游实现的基础碰撞检测,接着介绍了三种漫游方式,最后简单说明了项目发布的步骤。辔烨棟剛殓攬瑤丽阄应。第五章是对整篇文章的总结,提出了系统的优势和不足,并对系统未来的发展提出期望。2 系统总体设计与主要开发工具2.1 系统需求分析青岛农业大学建校以来,不断发展壮大,如今,为响应国家和政府的号召,已把校园信息化建设作为重中之重。学校目前已具备比较完善的网站,可以实现成绩录入、信息查询、公告发布、资料下载等功能,但对学校的展示还只停留在文字和图片上,学校领导和校规划处对校园的规划建设只基于二维平面图。峴扬斕滾澗辐滠兴渙藺。虚拟校园系统应做到对整体校容校貌的三维空间展示,但是因为青岛农业大学占地面积巨大,植被种类众多,建筑物复杂多样,因此,本系统主要实现青岛农业大学局部场景的建模和漫游。詩叁撻訥烬忧毀厉鋨骜。1. 实现从虹子广场到信息楼之间主要建筑的三维模型建立,包括主楼、化学楼和信息楼,尽量做到逼真且占用内存小。则鯤愜韋瘓賈晖园栋泷。2. 实现对搭建场景的不同路径自动漫游,系统分两条自动漫游路径,是依据主要道路而事先设置好的。3. 实现系统中虚拟场景的碰撞检测,避免人物穿树而过或者穿墙而入。使人物可以顺利过桥和攀爬台阶。4. 实现手动漫游,用户按照自己的意愿在系统中随意漫游,观赏校园建筑和景观。5. 实现自动漫游,开发者事先选取主要道路,设定为主要游览路径,使用户不必自己操作就可以游览校园。6. 实现飞行漫游,使用户可以高空俯瞰以实现虚拟化的青岛农业大学场景,了解建筑物布局。7. 场景和模型的优化,通过各种优化技术,使模型能耗小,漫游通畅,给用户身临其境的感受。8. 系统发布为网页版,使用户通过网络访问该系统,而不必下载安装客户端。2.2 虚拟场景总体设计本系统总体场景布局如图2-1。主 楼青岛农业大学虚拟校园建筑物植被环境其它信 息 楼化 学 楼树 木花 草天 空地 面道 路河 流图2-1系统的总体设计图胀鏝彈奥秘孫戶孪钇賻。在本系统的虚拟场景中包含了许多的模型,本系统根据不同模型所具有的特点采用了不同的建模方式。模型的创建主要通过3DMAX,而场景的搭建主要在Unity3D中完成。天空、地面和河流引用Unity3D中自带的包,树木主要采用十字建模技术,草地则采用贴图代替,以提高渲染速度。鳃躋峽祷紉诵帮废掃減。应注意问题:1. 养成良好的命名习惯。由于模型在使用过程中可能进行多次修改,所以在创建过程中应注意给创建物体重命名,选择简单而容易识别的名称,做好做到见名知意,方便自己以后修改使用。给物体赋予材质时,材质球的命名应参照物体命名,方便识别和修改。所有命名尽量使用英文加数字,Unity3D不识别中文。稟虛嬪赈维哜妝扩踴粜。2. 分清主次。在不影响系统整体外观的前提下,完全可以忽略哪些繁琐的细节。有些建筑物的细节结构复杂,分段数多,且漫游时可能被植物遮挡,这样的细节可以忽略,或者用纹理贴图代替,以提高渲染速度。陽簍埡鲑罷規呜旧岿錟。3. 及时使用成组命令。对一个物体不同部位的编辑完成后,或者不同模型之间的位置摆放就位后,注意使用成组命令将其组合,以防在以后的工作过程中不小心将其移动错位。沩氣嘮戇苌鑿鑿槠谔應。将模型从3DMAX导入到Unity3D集成开发环境的过程中,应注意以下几个问题:1. 模型的导入格式应设为.fbx,目的是为了方便Unity3D的识别。2. 导入单位设置。Unity中的1个单位是fbx文件中的1个单位的100倍,Unity以米为基本单位,所以,3DMAX中模型的单位要设为厘米。这样导入后,才能保证物体尺寸不变。钡嵐縣緱虜荣产涛團蔺。3. 3DMAX中Z轴为向上轴,而在Unity3D中,Y轴为向上轴,因此在到处设置中,注意设置Y轴为向上轴。懨俠劑鈍触乐鹇烬觶騮。2.3 系统实现流程首先是理论知识准备。通过阅读大量虚拟校园和虚拟现实方面的文章,对于虚拟校园的发展背景、研究现状及主要应用技术进行初步了解。謾饱兗争詣繚鮐癞别瀘。其次是需求分析,确定系统应该实现的功能、实现虚拟化的区域以及采用的编程语言和开发工具。然后进行地理信息数据的采集。地面道路及楼体的长宽可以通过校园规划平面图获得,但是由于缺乏青岛农业大学建筑物的建造图纸,只能通过拍照,采集照片,然后选取参照物,通过软件测算出其三维尺寸。对于地面的植被树木,趁春夏季节生长茂盛时采景,为了后期处理图片方便,图片应尽量少重合、无杂质、背景简单。呙铉們欤谦鸪饺竞荡赚。第四,开始主要建筑物的建模,本系统主要是主楼、化学楼和信息楼。采用开发工具主要为3DMAX和Photoshop,模型的建立严格参照测得的数据,部分材质参数的设置参照图2-2标准。莹谐龌蕲賞组靄绉嚴减。图2-2 3DMAX物体材质参数设置标准第五,系统中其它物体的建模。本系统中的所有道路奠定了场景搭建的基础,是整体场景的骨架。桥梁的建设忽略了细节,主要通过圆柱体和正方体拼接而成。树木部分采用了3DMAX自带的模型,部分十字交叉建模。麸肃鹏镟轿騍镣缚縟糶。第六,模型的导入与场景的搭建。Unity3D自带Terrain地形编辑,可以方便地创建不同的地形。第七,碰撞检测的添加和漫游的制作。手动漫游通过第一人称控制器实现,指定路线漫游则借助了时下比较流行的itween插件实现。納畴鳗吶鄖禎銣腻鰲锬。最后,发布为网页版,使用户通过浏览器就可以访问本系统。2.4 系统实现环境和开发工具的选择2.4.1建模工具的分析与选择目前,比较流行的建模软件有Sketch Up、AutoCAD、MAYA、3DMax等。Sketch Up的长处是在设计的时候提供最快的立体效果,它的建模精度不如3DMAX高,只是辅助设计的软件,而MAYA只有在材质表现和角色动画上,效果优于3DMax,在影视特效上也略高于3DMax4。AutoCAD是一款被广泛应用于平面绘制的软件,也有人看重它在平面基础上建模的优势,从而把它作为建模软件,但它的缺点是可视性较差,这也是它没有在建模领域占领主流地位的原因之一。風撵鲔貓铁频钙蓟纠庙。3DMAX支持大量插件,在动画的处理方面独具优势,建模功能强大,支持多种导出格式,此外3DMAX因操作简单,与其他相关软件的配合度也很高5。在界面设计方面,3DMAX采用三视图与透视图相结合的方式,不但直观,还达到精确建模的目的,收好了用户的广泛认可。目前,3DMAX的优势已经在辅助教学、广告、影视等多个领域得到认可,是一种功能强大的三维建模工具6。灭嗳骇諗鋅猎輛觏馊藹。综上所述,3DMAX以其界面友好、功能强大、拓展性好、操作简单、容易上手等优点赢得了广大用户的青睐,本系统也采用3DMAX为建模工具。铹鸝饷飾镡閌赀诨癱骝。2.4.2 集成环境的分析与选择目前,实现虚拟漫游的主要集成环境有OpenGL、VRML、Unity3D等,其中,OpenGL集成了大量的纹理影像、渲染、特殊效果和可视化函数,能够生成逼真的三维场景7,但是,它的包装性比较差,代码的编写非常繁琐,不容易掌握。VRML独立于计算机平台的建模语言,由于其低宽带运行的特点,在网络多用户交互等方面独具优势8。但是VRML的语言功能目前还不是很强,特别是在碰撞检测的代码编写方面需花大量时间处理。Unity3D的主要应用领域是游戏开发制作,兼容性各种操作系统,支持C#、JavaScript、Python等多种脚本语言9,开发环境比较直观,其自带丰富的资源包和脚本也给用户提供了方便,由于其简单易学,容易上手,已受到很多用户的青睐,具有良好的发展前景。攙閿频嵘陣澇諗谴隴泸。3 三维场景的构建与优化3.1 资料的收集与整理本系统以青岛农业大学实景为蓝本,虚拟系统最主要的任务就是给人身临其境的感受,而资料的采集直接影响到场景的搭建和展现给用户的视觉效果,是不可忽略的关键环节。趕輾雏纨颗锊讨跃满賺。资料又分为两类,一类是数据资料,主要包括道路、树木和楼体的三维数据;另一类是图像资料,主要是物体的贴图,这类资料的收集主要有两个途径,一是相机拍摄,然后图片处理;二是网络下载,随着建模技术的成熟,网络上的贴图库也越来越丰富,很多建筑材质贴图在网上就能下载,省时又省力。本系统的资料收集过程如下:夹覡闾辁駁档驀迁锬減。1. 收集校园整体的俯视图,选择将要用到的部分,用图像软件放大,然后打印。2. 实地测量。因平面图中没有任何数据提供,所以需要使用测量工具手动测量,并将测量数据记录到打印的平面图上。视絀镘鸸鲚鐘脑钧欖粝。3. 采集照片。通过数码相机实地取景,经Photoshop处理,作为纹理贴图使用。3.2 模型的建立模型的建立是虚拟校园建设中最繁琐、工作最重的环节,建模效果不仅关系到系统表现的真实性、能否给用户带来沉浸感,也将影响场景的渲染速度。偽澀锟攢鴛擋緬铹鈞錠。3.2.1 建筑物模型的建立建筑物主要是指楼梯,这里以化学楼为例,介绍模型建立过程。3DMAX主要有3种建模方式,多边形建模、面片建模和NURBS建模,多边形建模简单易学,容易上手,且在表现细节方面独具优势10。因此,本系统选用多边形建模为主要建模方式。緦徑铫膾龋轿级镗挢廟。主要建模思想为:1. 划分单元。将楼体看作一个个相同的单元组成,只需描绘一个单元,然后通过复制或者阵列命令即可构造楼梯的概貌。化学楼的某楼体单元如图3-1所示。騅憑钶銘侥张礫阵轸蔼。图3-1 化学楼单元2. 阵列命令构造楼层。通过工具菜单中的阵列命令,调整变换增量,可以快速准确地复制多个单元,从而构造整个楼层。化学楼楼层如图3-2。疠骐錾农剎貯狱颢幗騮。图3-2 化学楼楼层3. 选中构成楼层的所有单元,通过成组命令组合,然后再次利用阵列工具,向上复制楼层,就可以完成楼体主要部分的制作。镞锊过润启婭澗骆讕瀘。4. 补全细节。制作台阶、底墙、楼顶等。化学楼模型完成图3-3。图3-3 化学楼模型3.2.2 树木模型的建立树木模型采用十字交叉法建立,主要思想是通过两个垂直相交的面片加上贴图来模拟真实树木。实现步骤如下:1. 通过3DMAX制作两个相互交叉的面片,面片的尺寸参照树的高度和投影直径。制作过程应注意交叉点的选择,只有选择面片中心为交叉点,才能保证模型从各个角度观察无错位。效果如图3-4所示。榿贰轲誊壟该槛鲻垲赛。图3-4 十字交叉树模型2. 模型导入到Unity3D中,并摆放好位置。在模型从3DMAX导入Unity3D的过程中,应注意以下问题:邁茑赚陉宾呗擷鹪讼凑。a)导入格式应设为.fbx,方便Unity3D识别。b)导入单位设置。Unity中的1单位是fbx文件中的1单位的100倍,Unity以米为基本单位,所以,3DMAX中模型的单位要设为厘米。这样导入后,才能保证物体尺寸不变。嵝硖贪塒廩袞悯倉華糲。c)3DMAX中Z轴为向上轴,而在Unity3D中,Y轴为向上轴,因此在到处设置中,注意设置Y轴为向上轴。该栎谖碼戆沖巋鳧薩锭。3. 贴图的添加。将事先处理好的png格式树木贴图导入贴图文件夹,因为导入的两个面片公用一个材质球,所以只需将贴图赋予其中一个就可以。需要注意的是,将查看面板中的阴影方式改为垂直混合型,隐藏贴图背景。实现效果图如图3-5所示。劇妆诨貰攖苹埘呂仑庙。图3-5 十字交叉树3.2.3 其它模型的建立Unity3D引擎内置了一个功能十分完善的地形编辑工具Terrain Editor,开发人员利用它可以方便快捷的制作出各种复杂的地形11。需要注意的是,地面创建之后,默认高度为0,因此不能使用“下降”工具。本系统地面的创建过程如下:臠龍讹驄桠业變墊罗蘄。1. 创建地面,通过“资源”菜单导入地面资源包。2. 利用提升工具将整体提升距离地面200米。3. 利用提升工具制作出小山,利用下降工具制作出河道。地面工具的作用效果如图3-6。图3-6 地面工具作用效果图直路建立非常简单,用平面或立方体都可以;弯路的建立存在一定难度,它需要参照实际道路的弯曲角度和弯曲位置等。为了使道路之间的拼合更加精确,本系统采用3dmax建立道路。需要注意:鰻順褛悦漚縫冁屜鸭骞。1. 道路之间留出建筑物及草坪的场地,尺寸要准确;2. 人行道、主道路和路牙要分离为不同物体,以便赋予不同材质;部分道路模型如图3-7所示。图3-7 道路模型3.3 三维场景的制作场景的拼接在Unity3D中实现,其实现过程如下:1. 将制作好的模型导入model文件夹,然后拖放道路模型到制作好的地面上,注意,道路一定要与地面紧密贴合,但是不可嵌入地面,否则会出现闪烁现象;穑釓虚绺滟鳗絲懷紓泺。2. 导入建筑物模型,拖放到适当位置。然后,用Terrian中的下降工具制作出河道,安置好桥梁模型;3. 最后是树木模型的摆放,应保证漫游过程中从每一个视角观看,都自然美观。按照上述步骤搭建的场景俯视图如图3-8所示。图3-8 场景搭建俯视图三维场景创建后,应为系统添加光源以模拟太阳光。Unity3D为用户提供了点光源、面光源、聚光灯和平行光源,本系统采用添加平行光源来模拟太阳光。天空和水的制作是通过导入Unity3D自带的sky和water资源包,Unity3D提供了多种天空材质,可以在编辑菜单的渲染设置中进行选择,本系统选择了sunny1 sky材质,实现效果如图3-9所示。隶誆荧鉴獫纲鴣攣駘賽。图3-9 添加环境效果图3.4 模型及场景的优化由于三维校园模型是虚拟校园系统中一个非常重要的组成要素,故在对校园校园的三维场景进行建模时,应该使模型与现实中实体尽量逼真,以达到加强真实感的效果。而三维模型的表现效果取决于面的数量,数量越多,渲染效果越逼真,越接近于现实 12。但是,详细的细节表现又会影响渲染速度,因此需要在两者之间寻找一个平衡,既不影响模型外观,有能获得较快的渲染速度。本系统的主要优化技术如下:浹繢腻叢着駕骠構砀湊。1. 减少物体分段数;2. 删除不可见的面;3. 降低图片分辨率,使用gif、gpeg等占用内存较小的图片;4. 减少模型数量,通过筛选,只留下具有表现力的建筑物模型;5. 漫游过程中只渲染人物周围的景物,而对远距离场景不进行渲染。6. 尽量使用纹理贴图。有时候,物体复杂的构造不必精细地描绘,可以使用具有立体感的纹理贴图来代替。因为一幅贴图代替的简单模型比由成千上百个点线面构造的模型具有更快的渲染速度和不会过于逊色的渲染效果13。 鈀燭罚櫝箋礱颼畢韫粝。4 漫游系统的实现与项目发布4.1 碰撞检测碰撞检测是虚拟漫游系统中对物体间碰撞行为的检测,是虚拟校园漫游系统的必备功能,它对物体间的碰撞行为进行测试并作出处理,例如人物是否撞到墙面等14。惬執缉蘿绅颀阳灣熗鍵。碰撞检测是实现人工漫游的前提,主要作用是阻止漫游人物直接穿过树木墙面等物体。Unity3D提供两种碰撞检测功能,一种是碰撞器,一种是触发器。碰撞器包含多类,包括Box Collider、Capsule collider、Sphere Collider、Mesh Collider等。所谓触发器,只需在物体的检视面板中勾选Is Trigger属性选框。但是导入的模型,一般不带触发器,这种情况需要人工添加碰撞器。碰撞器的添加有两种方法,一种是添加上述多种碰撞器的一种,另一种是勾选模型的检视面板中的Generate Colliders选框,这种办法能够提供精确的检测,但是资源能耗大,不建议使用。本系统中,我们给楼体添加盒装碰撞器,给树木添加胶囊体碰撞器,这种方式既能节约资源,又可以起到很好的碰撞检测功能。以化学楼为例,碰撞器的添加如图4-1。贞廈给鏌綞牵鎮獵鎦龐。图4-1 化学楼碰撞检测器4.2 漫游的实现为了更好的展示校容校貌,让用户较详细了解校园建设和校园文化,保证用户漫游时能较好地与环境进行交互,以达到身临其境的感觉,本系统提供了3种漫游方式:操作漫游、自动漫游以及飞行漫游。嚌鲭级厨胀鑲铟礦毁蕲。4.2.1人工漫游的实现人工漫游是指用户根据自己的意愿在虚拟场景中漫游,类似于在校园中散步。本系统采用第一人称控制器实现漫游,该控制器自带脚本,可实现行走、跳跃等功能。其操作说明如下:薊镔竖牍熒浹醬籬铃騫。W:向前行S:向后退A:向左行走D:向右行走空格:跳跃 鼠标:镜头方向本系统中第一人称控制器的具体属性设置如图4-2所示。图4-2 控制器属性设置4.2.2 自动漫游的实现通常情况下,自动漫游有3种实现方式,它们分别为:代码、动画和路径。由于代码实现难度比较大且不易掌握,Animation动画关键帧的设置不够直观,本系统采用了ITween插件来实现自动漫游,操作直观且容易掌握。其实现过程如下:下载ITween插件并导入工程,找到ITween Path脚本,并拖放到第一人称控制器,此时,可在第一人称控制器的检视面板中修改路径节点数,这些节点默认在设计场景中的原点处,可以通过拖动节点来构造漫游路径。漫游路径如图4-3所示。齡践砚语蜗铸转絹攤濼。图4-3 漫游路线图漫游路径设置过程中,应注意每个节点的距离尽量一致,ITween通过以下函数寻找漫游路线,设置漫游速度等,添加漫游路径后,修改下列函数的参数使漫游速度更加合理,均匀。绅薮疮颧訝标販繯轅赛。iTween.MoveTo(gameObject, iTween.Hash(path, iTweenPath.GetPath(path1), time, 60, easetype, iTween.EaseType.linear);4.2.3 飞行漫游的实现飞行漫游是指用户从高空俯瞰地面场景,就像乘坐飞机游览校园,可以比较直观地观看校园的整体布局。本系统提供两种方式:操纵飞行和自动飞行。自动飞行主要通过itween插件,将路径提高到空中,起始点应与第一人称控制器保持一定距离,以保持飞行速度一致。操纵飞行的实现主要应用了面片的单向透明性,将面片提高到距离地面100米处,绕X轴旋转180度,添加碰撞器,将第一人称控制器提高100米,旋转摄像头角度,缩小第一人称控制器比例。最后,调整移动速度,使其与飞行匹配。图4-4是飞行漫游俯视图。饪箩狞屬诺釙诬苧径凛。图4-4 飞行漫游俯视图4.3 项目发布Unity3D支持多种平台和发布方式,用户可发布项目至Windows、Mac、Wii、iPhone和Android平台,也可以发布为网页版,满足用户远程访问的需求16。为了满足尽量多人的意愿,我们需要发布为网页版。操作步骤为:选择File,Build Settings,选中Platform的Web Player选项,点击Build,选择保存文件夹即可,导出设置如图4-5。烴毙潜籬賢擔視蠶贲粵。图4-5 导出设置图导出文件包括两个,后缀名分别为.Unity3D和.html.可以通过编辑网页文件修改网页呈现样式。4.4 系统漫游实例展示以下给出部分场景的漫游效果图。图4-6给出了系统界面图。图4-6 系统界面图4-7是信息楼前道路的效果图。图4-7 道路信息楼的漫游效果如图4-8所示。图4-8 信息楼图4-9出了手工操作方式下,漫游小山的效果图。图4-9小山图4-10给出了化学楼的漫游效果图。图4-10化学楼图4-11是虹子广场的漫游效果图。图4-11 虹子广场图4-12是玉带桥的漫游效果图。图4-12 玉带桥5 总结与展望本研究在虚拟现实技术日益成熟的前提下,以3DMAX为建模工具,以Unity3D为集成环境,开发了一个以青岛农业大学部分场景为蓝本的虚拟校园系统。主要工作有以下几点:鋝岂涛軌跃轮莳講嫗键。1. 通过数据采集、需求分析等确定系统开发的主要框架和主要应用技术。2. 根据不同物体的特点研究不同的建模方式,并通过3DMAX完成主要物体的建模。3. 处理采集到的主楼、化学楼、信息楼、牌匾、文博路面、虹子广场等地方的照片,备用。4. 研究碰撞检测技术,场景漫游技术和优化技术等,使用户可以通过鼠标和键盘比较顺畅地在虚拟系统中游览。5. 项目的发布和试运行,使用户通过网页远程访问本系统,并取得了良好的效果。由于时间和精力有限,本虚拟校园系统未能实现整体校园模型的建

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论