1、本科毕业设计(20届)宁波市海洋世界的三维立体漫游系统研究所在学院专业班级计算机科学与技术学生姓名学号指导教师职称完成日期年月I摘要【摘要】随着计算机技术、通信技术及其他相关技术的飞速发展,虚拟现实的仿真技术也日益成为当前研究的热点。3D在建筑行业中也已得到广泛的应用,虚拟漫游的一个表现形式就是建筑漫游,它综合了虚拟漫游的多维性。本建筑漫游是以宁波市海洋剧场为场景,利用3DSMAX和VRML工具,以虚拟漫游的形式表现出一个生动丰富的海洋世界,让足不出户的人们也可以通过网络体验海洋风光,同时也为宁波海洋世界的形象和宁波的旅游资源起到了宣传的作用。【关键词】虚拟漫游技术;3DSMAX;VRMLII
2、ABSTRACT【ABSTRACT】WITHTHEDEVELOPMENTOFCOMPUTERTECHNOLOGY,COMMUNICATIONSTECHNOLOGY,ANDOTHERRELATIVETECHNOLOGY,THESIMULATIONTECHNOLOGYBASEDONVIRTUALREALITYISAHOTRESEARCHISSUEATPRESENT3DINTHECONSTRUCTIONINDUSTRYINAWIDERANGEOFAPPLICATIONS,VIRTUALROBOTSAFORMOFEXPRESSIONISBUILDINGROBOTS,ITINTEGRATEDTHEVIR
3、TUALROAMINGMULTIDIMENSIONALTHEBUILDINGSROAMINGSCENARIOSISNINGBOOCEANTHEATER,THEUSEOF3DSMAX,ANDVRMLTOOLSTOTHEVIRTUALROAMINGTHEFORMOFAVIVIDANDRICHMARINEWORLD,SOTHATHOMESOFPEOPLECANEXPERIENCETHEOCEANSCENERYTHROUGHTHENETWORK,BUTALSOFORNINGBOSEAWORLDSIMAGEANDPROMOTETOURISMRESOURCESPLAYEDAROLE【KEYWORDS】VI
4、RTUALRENDERINGTECHNIQUE;3DSMAX;VRMLIII目录摘要IABSTRACTII目录III1课题研究的目的和意义111虚拟现实技术的概念112虚拟现实的特点1121多感知性(MULTISENSORY)1122浸没感(IMMERSION)1123交互性(INTERACTIVITY)2124构想性(IMAGINATION)213虚拟现实技术在旅游中的优势214本文研究的主要内容32开发工具的介绍4213DSMAX软件422VRML423PHOTOSHOPCS软件53三维虚拟场景的设计631场地的调研与分析6311场景的自然景观介绍6312场景组成7313场景的选取832场
5、景的绘制8321场景中非生命体的绘制8322场景中生命体的绘制1333摄影机和镜头的设计1534动画设计164三维虚拟漫游技术的实现1741降低场景物体复杂度的方法17411贴图技术1742传感器的设置18421触动传感器18422范围传感器2043动画代码的生成2144声音效果设计235软件的运行效果2551运行环境说明2552部分演示画面256结束语2961本文获得的结论2962感悟和体会29参考文献30致谢错误未定义书签。11课题研究的目的和意义11虚拟现实技术的概念虚拟现实是人们把相对复杂的数据通过计算机的运算,达到一种可视化操作和交互。跟传统的界面比较,虚拟现实技术带来了改革的创新。
6、虚拟现实中的“现实”通常是指在一般存在于世界上的任何事物,它可以是实际生活中不能实现或者很难去实现的,也可以是实际中能够实现的,这是把“现实”的概念进行广泛的运用。“虚拟”是指用计算机生成的意思。因此,虚拟现实是指用计算机生成的一种特殊环境,人可以通过使用特殊装置将自己投放到这个环境中,并控制、操作环境,实现特殊的目的,说明人是这种环境的主宰。从本质上来说,虚拟现实就是一种先进的计算机用户接口,它通过给用户同时提供诸如触觉、听觉、视觉等各种直观而又自然的实时交互手段,最大限度地方便用户的操作。12虚拟现实的特点虚拟现实的特点有多感知性、浸没感、交互性、构想性。121多感知性(MULTISENS
7、ORY)多感知性是指一般计算机技术拥有的视觉感知之外,还有运动、触觉、听觉、力觉、味觉、嗅觉等感知。对于理想的虚拟现实技术,当然需要具备这一切的感知功能,但是现在的技术条件非常有限,目前的虚拟技术无法达到全部的感知功能,只是限于运动、视觉、听觉、触觉、力觉这几种,感知功能的强大跟虚拟技术的先进有很大的关系。122浸没感(IMMERSION)浸没感,指用户感到作为人物存在于模拟环境中的真实程度,又被称临场感。理想的模拟环境的真假是用户很难分辨的,当用户身临其境的在计算机所创建的三维虚拟场景中运动时,该环境中的一切仿佛都是真的,动起来是真的,听上去是真的,如果配备一定的设备,甚至可以品尝和通过嗅觉
8、来感受,如同在真实世界中存在一样。2123交互性(INTERACTIVITY)用户对虚拟环境内物体的可操作程度,并且从环境得到反馈的自然程度。例如,用户可以通过某些操作可以使物体的物理位置进行改变,或者点击某项物体可以激发另一个物体的动作。124构想性(IMAGINATION)虚拟现实技术存在很大的想像空间,它可以拓宽人类眼界,不仅可再现真实存在的环境,也可以大胆的假设,构想出客观不存在的甚至是不可能发生的环境。一般来说,一个完整的虚拟现实系统是由视觉系统、虚拟环境处理器、听觉系统以及跟踪设备和各种功能单元组成,缺一不可。13虚拟现实技术在旅游中的优势目前虚拟现实系统发生着日新月异的变化,从国
9、内外研究的进展情况来看,虚拟现实的研究结合当前的各种计算机技术和各行业的发展而飞速前进。近年来旅游也成为了炙手可热的话题,在追求物质享受的同时,人们逐渐开始追求经精神上的享受,旅游是一种很好的选择方式。但是未必所有人都能够满足旅游的梦想,很多人由于客观条件受到现实而无法真正的到达想要去的地方。对于这一点,现在的虚拟现实技术就能够为大家提供很多帮助和乐趣,相较与传统的旅游,虚拟旅游有3个方面的优势。第一,虚拟旅游不受时间,空间以及经济上的限制。与传统旅游要亲自到达旅游地点不同,游客可以在任何时候,在任何地点,只要有一台与互联网想通的计算机就可以游览你所要去的景点。并且省去了漫长而又辛苦的旅程,节
10、省了一批很大的旅游费用,这对于经济不宽裕的群体来说,也是一种优势。第二,虚拟旅游可以游览已经不复存在的景点。由于自然或者人为地原因,一些古老的景观已经消失,为了满足游客这方面的需求,技术员可以通过了解和观赏一些静态的资料,利用虚拟现实技术还原当时的场景,使游客可以利用计算机亲自体验当时的场景。这一点是传统旅游不可替代虚拟旅游的。第三,虚拟旅游有很好的宣传作用。虚拟旅游可以为传统旅游起到宣传的作用,对于很多游客,虚拟旅游毕竟不能满足顾客的需要,但是可以为顾客在旅游之前做好一定的规划,对景点有大概的了解,这比传统的广告宣传更加生动,更加具体。有了那么强大的优势,虚拟现实技术在旅游中的前景必定无可限
11、量。314本文研究的主要内容本文选择了宁波海洋世界的海洋剧场作为研究的对象,用3DSMAX和VRML实现了该景观的虚拟游览原型系统。第一节介绍课题研究的目的和意义,又分3个小节进行详细说明,分别是虚拟现实技术的概念,虚拟现实的特点以及虚拟现实技术在旅游中的优势。第一节首先解释了虚拟现实技术的定义,第二节中介绍了虚拟现实的四大特点,在第三节中主要介绍虚拟现实技术的虚拟旅游较传统旅游的优势。第二节介绍了开发工具,又分三个小节分别介绍了3DSMAX软件,VRML软件以及PHOTOSHOPCS软件。第三节是三位虚拟场景的设计,分4小节,分别是场景调研和分析,场景生命体和非生命体的绘制,摄影机和镜头的设
12、计和动画设计。第一小节介绍了场景中的自然景观,分析场景的组成,最后选择绘制的场景。第二小节中详细描述了场景中生命体和非生命体不同的绘制方法。第三小节中介绍了场景中摄影机的设置。第四小节则是介绍动作的制作流程。第四节是三维虚拟漫游技术的技术实现,其中有降低场景物体复杂度的方法,传感器的设计,动画代码生成和声音效果的设计。这里的技术实现主要是在系统中增添了很多互动的效果,是虚拟漫游中重要的组成部分。主要包括贴图,触动传感器,范围传感器,动画以及声音。第五节是软件的运行效果。通过虚拟场景和实体照片对比来验证系统是否符合要求。主要包括运行环境说明和部分演示画面。第六节是结束语,包括本文获得的结论,感悟
13、和体会。在此章节中主要是对自己所做系统过程的评价和体会。42开发工具的介绍213DSMAX软件3DSTUDIOMAX是AUTODESK公司开发的三维动画渲染和制作软件,也是目前市面上最常见的三维动画建模软件,在当今被广泛应用于广告、影视、工业设计、建筑设计、多媒体制作、游戏、辅助教学以及工程可视化等领域。3DSMAX相比较与国内其他的建模软件和动画制作软件更加成熟,使用率也是占了绝对的优势。不同行业的技术要求不同,要求掌握3DSMAX的程度也不同。最近几年,由于房地产市场的火热,3DSMAX在建筑方面的应用也是得到了很到的发展,各种美轮美奂的效果图,样板房都是3DSMAX的杰作,像现在很多游戏
14、也运用到3DSMAX。3DSMAX的提供了两种造型工具,包括基本造型工具和高级造型工具。基本造型工具可以用来创建立方体,球体,多边形,圆柱体、圆管、圆环,椎体和半球体。高级造型工具可制作出山、水、波纹、波浪、颗粒及非规则形体,如人物,植物等。创建好的三维形体可以进行扭曲,弯曲,缩放,摇摆,角度变形,雕刻和锥孔等操作,并且3DSMAX提供了丰富贴图功能,用户可以通过材质编辑器对物体进行贴图,如果要让材质与真实的相近,并可对材质进行颜色、明暗、色裹、反射,凹凸和透明度等进行编辑。为了提高真实感,3DSMAX中还可以设置光源和摄影机,光源可分为环境光、泛光灯和聚光灯,用户可以根据需要自己设置灯光,并
15、调整角度。用户也可以根据场景的需求设置任意以及多个摄影机,并且可以调整位置,方向和角度,给观看者呈现一个最佳的角度观赏场景。此外,在3DSMAX中还有很多特殊效果,如淡入淡出,模糊,光晕,雾雨,声等,利用这些特技对场景中的物体进行特殊的处理,可产生很多美轮美奂的神奇效果。3DSMAX中还具有动画功能,通过对关键帧的设置和创建轨迹来完成所需要的动画,并且在3DSMAX中就有实时预演功能,你可以按播放键观察自己创建的动画。更值得一提的是,3DSMAX中还带有各种插件,这里就包含了VRML97的辅助工具,具体包括锚,声音,布告牌,雾等简单的VRML操作,使用起来方便,易懂。22VRMLVRML即虚拟
16、现实建模语言,是一种用于建立真实世界的场景模型或人们虚构的三维世界的场景建模语言,它是一种与平台无关的语言,是目前INTERNET上基于WWW的三维互动网站制作的主流语言。它是以虚拟现实为特征的3DWEB技术的核心,集成多种媒体类型的面向对象的三维造型语言,并也是一种可以内嵌JAVA/JAVASCRIPT等语言编写的程序代码的解释性语言。VRML的对象称为结5点,子结点的集合可以构成复杂的景物。我们可以通过创建实例来重复使用结点,并对它们命名,进行定义后,即可建立动态的虚拟世界。构建VRML文件一般有三种方法使用文本编辑器直接进行VRML文件的书写。但是这样也存在一定的缺陷,因为通过代码编写只
17、能创建一些比较简单的物体和场景,如果是复杂的场景也通过这种方式,那是非常行不通的,不可能是通过直接编辑的方式。第一是对于复杂的物体建模是很有限的,小数位精确两位已经是计算的极限,第二是因为场景之间的关系比较复杂,无法直接确定两者的位置,第三对各方面的要求都比较高。一般的方法是使用可视化编辑器来建模。相对于直接进行文件的书写,使用可视化编辑器避免了一些问题,在复杂场景的生成上也改善了很多。可视化的工具都具有一个突出的优点就是使用起来相当方便,它只要轻轻的移动鼠标按下按钮,就可以省去输入大量命令或者代码,这样简单的操作同样可以实现相同的功能。第三种方法就是转换其它常见的图形格式。在互联网上,存在着
18、大量的各种各样的三维文件格式,可以将这些文件格式通过常见的工具进行转换,得到所要的格式。需要注意的是,有些格式转换时光照和纹理贴图会消失,所以转换程序都有一定的局限性。23PHOTOSHOPCS软件PHOTOSHOP是由ADOBE公司开发的图形处理系列软件之一,通常用于图像处理和广告设计。图像编辑、图像合成、校色调色及特效制作是PHOTOSHOP的四大功能。图像编辑就是对图像做各种变换,也可以复制或者去除斑点,修补图像残缺。一般在人物摄影中用的较多,因为可以祛除人物不美观的部分,将人物进行加工得到一个满意的效果。图像合成则是通过图层操作、工具应用将几幅图片合成一副所需的图像。我们可以通过叠加,
19、滤光等操作,也可以使用羽化等工具,让多幅图片能很好的融合,一般无法辨识图像是否是经过加工合成。校色调色是PHOTOSHOP中深具优势的功能之一,通过简单的操作可对图像颜色进行明暗的调整和校正,也可在不同领域如网页设计、印刷等方面颜色进行切换时,满足图像的需求。特效制作在PHOTOSHOP中主要有滤镜、通道及工具综合应用完成。例如运用特效制作,可以将一般的图像设置成油画。浮雕、素描等传统美术技巧的效果。63三维虚拟场景的设计31场地的调研与分析在对虚拟场景进行建模前夕,本人亲自到宁波海洋剧场进行实地考场,对海洋剧场的外观以及内部构造都进行了解,并且拍摄照片以及视频,作为场景的素材,而且拿到了海洋
20、剧场的地图参考,这样对于建模就更加有帮助了。本文中从场景自然景观简介,场景组成和场景选取三个方面进行描述。311场景的自然景观介绍宁波海洋世界极地馆位于儿童公园东首,按国家AAAA级旅游景区标准规划设计,是集大型表演互动、极地景观、极地动物展示、海洋科普教育于一体的大型海洋剧场。馆内弧形阶梯式观众席能够同时容纳2000多名观众,是全国最新颖时尚、最振奋人心的海洋的海洋剧场。极地馆以“大型海洋生物表演”为主题,海洋剧场每天都有堪称世界水平的海豚、花鲸、海狮表演,掌声不断,高潮叠起,让你感受到人类与海洋生物亲密无间的和谐生活。极地馆内还设有海洋科普教育长廊、极地动物展示区、喂食互动区,海洋西餐厅、
21、海洋精华品商场等,令人充分发挥想象力,领略独特的异域奇观,亲身体验海洋的博大与魅力。图31海洋剧场一楼平面示意图7图32海洋剧场二楼平面示意图312场景组成通过归类和划分将场景分为十四个部分,分别是售票处,旅游服务中心,海豚展示区,生命之源海洋科普画廊,北极狐展示区,花鲸展示区,北极狼展示区,跳崖企鹅展示区,海狗展示区,海象喂食互动区,海洋精品商场,海洋西餐厅,光中看台区,表演池。其中所有的墙体,楼梯,看台座位,以及各种科普展示牌等都为静态物体,部分海洋动物,人物物以及表演池中的水都有动态物体。以下就为场景的具体组成图。图33场景的组成图8313场景的选取场景剧场主要有两层,要对所有的事物进行
22、模拟重现是有困难的,每个场景都要做到精细的话,工程量非常大,所以也是有侧重和简略的。本系统主要侧重表现的是动物的展示区,生命之源海洋科普画廊,以及观众看台,表演池动物的表演,人物的动作模拟。32场景的绘制场景中的各个物体可分为两类,一类是非生命体,另一类则是生命体。所以在绘制过程中也将物体分为这两类,分别进行绘制。321场景中非生命体的绘制海洋剧场是一个非常庞大的系统,所以他的非生命种类繁多,绘制的方法也有很多,下面就介绍几种绘制比较复杂的,有代表性的场景介绍。1楼梯与扶手的绘制在场景中,楼梯和扶手出现的频率都很高,所以介绍下绘制的思路。楼梯的绘制。其实台阶的绘制方法有两种,一种是手工的一个一
23、个台阶画,还有一种就是直接运用3DSMAX中创建面板几何体楼梯工具就可以直接创建了。因为往往直接绘制的楼梯达不到我们的要求,为了谨慎起见,我们采用自己手工绘制,因为场景中的楼梯都是由长方体构成,以此为例介绍,具体步骤如下(1)选择标准基本体长方体,挤出一个长方体,根据你需要楼梯每一台阶的高度,在参数中设置它的长、宽、高。(2)选择第一个台阶,右键单击克隆,这样就得到第二个台阶,然后改变Y轴和Z轴的位置,并将第一个台阶Z的最小值与第二个台阶Z的最大值对齐,这样第一台阶与第二台阶就能拼接在一起。(3)重复上述的步骤,楼梯就形成了。扶手的绘制。扶手的绘制方法也有两种,一种是通过贴图,还有一种是自己建
24、模,这两种方法在场景中都有得到运用。贴图的方法比较简单,主要步骤是(1)选择标准基本体长方体,挤出长方体。(2)选择渲染材质编辑器,将栏杆材质拖入材质球。(3)将材质编辑器中的材质拖到长方体,点击在窗口中显示贴图,这样就成功了。另一种建模的方法,主要步骤是(1)选择标准基本体圆柱体,挤出一个圆柱(2)通过贴图,将栏杆的材质贴到圆柱上,这样就形成第一根栏杆。(3)选择第一个栏杆,右键单击克隆,这样就得到第二根栏杆,改变Y轴和Z轴的位置,调整好栏杆间距。(4)重复上述步骤,这样竖着的栏杆就形成了。(5)选择一根栏杆,利用缩放工具,调整长度,并且右键选择旋转,调整好角度和Z轴的位置,将横着的栏杆与竖
25、着的栏杆结合,这样就形成了扶手。9图34台阶与扶手的透视图图35通过贴图实现的扶手2看台的绘制在场景中,二楼观众看台的绘制是非常重要的,也是非常繁琐的。在绘制看台时,也是通过先对第一阶建模,主要步骤是(1)选择标准基本体圆柱体,挤出一个圆柱。(2)右键单击一号圆柱体选择克隆,然后选择缩放,使X轴和Y轴同步变小,得到二号圆柱。(3)选择二号圆柱,再选择复合对象布尔,拾取操作对象一号圆柱,选择差集(BA),这样就得到一个空心的圆柱体。(4)选择标准基本体长方体,挤出一个长大于圆柱直径,宽小于圆柱直径,高大于圆柱高度的长方体。(5)移动长方体的位置到空心圆柱体不需要的部分,选择复合对象布尔,拾取操作
26、对象空心圆柱体,选择差集(BA),这样就得到一部分的圆柱环。(6)选择缩放,对X轴,Y轴,Z轴都调整到合适的大小,这样一个看台台阶做好了。(7)复制第一个台阶,调整位置,重复上述步骤就能得到最后的看台了。10图36通过布尔运算得到的第一个看台台阶图37看台的最终模型3表演池的绘制二楼的表演池是海豚与海狮进行表演的地方,也是整个场景重要的构成部分,为了显示一个真实的效果,表演池中的水是会流动的,下面介绍绘制的方法(1)首先选择创建面板几何体标准基本体圆柱体,创建一个圆柱体,并选择缩放,将它拖拉成表演池的形状,并克隆。(2)选择圆柱体,使用复合对象布尔工具,拾取操作对象地板,选择差集(BA),由于
27、地板是由很多长方体构成,需要逐个进行布尔运算,最终得到表演池的模型。(3)将水的贴图放入材质编辑器,设置透明度80,将材质贴图到克隆的圆柱体上,调整高度,放入表演池的模型中。(4)再创建一个长方体,放入表演池模型,大小不超过表演池(5)选择长方体,右键单击转化为可编辑面片,选取顶点选项,之后就可以在长方体上拖动顶点,使长方体铺满表演池。(6)点击设置关键点,选择关键11帧对长方体的顶点进行幅度较小的拉伸,这样就形成了一个动态的水的效果。图38表演池透视图图39表演池最终效果图4展示缸的绘制海洋剧场中展示的动物一般都放在展示缸中,为了使动物展示感觉更加逼真,展示缸都没有采用直接贴图,而是用以下方
28、法进行绘制。展示缸的绘制采用的也是布尔运算,这里所有的缸都是长方体,所以以此为例,步骤如下(1)首先选择创建面板几何体标准基本体长方体,根据所需展示缸的大小创建两个长方体。(2)将较小的长方体放入到较大的长方体中心(小的长方体的宽应小于较大长方体)。(3)选择小的长方体,使用创建面板复合对象布尔工具,选择差集(BA),这样就得到一个展示缸。(4)创建面12板几何体标准基本体长方体,长度与高度都跟展示缸大小相同,宽度小于它。(5)将动物展示缸的照片素材放入材质编辑器,设置透明度为40,对长方体贴图,这样获得的展示缸就有立体和真实的感觉。图310鱼缸的透视图图311鱼缸的最终效果5其他模型的绘制其
29、他的模型绘制如墙壁,售票处,科普画廊都是由标准基本体组合而成,有些则是通过布尔运算得到再加上基本操作得到,虽然整个场景可能都是通过简单的建模制作,但是要组合成一个完成庞大的场景也需要花费很大的时间。13322场景中生命体的绘制在整个场景中,生命体主要包括人物,动物。下面分别介绍带骨骼生命体和无骨骼生命体的绘制。1无骨骼生命体的绘制无骨骼生命体主要是一楼展示区中部分动物,如北极狐、海狗、海象、跳崖企鹅以及鱼类,其他展示动物则是通过贴图省略。下面通过北极狐的例子简单介绍下,无骨骼的北极狐的绘制主要分为建模和添加动作。建模。因为北极狐的模型较为复杂,所以这里并没有真的建一个北极狐的模型,而是用一个平
30、面代替,选择创建面板几何体标准基本题平面,给平面贴图后,还是会很逼真的,因为贴图本身就影藏着凹凸信息。这样的建模方法不但简单,数据量少,而且不影响效果。添加动作。这里配合关键帧,对北极狐的就添加了一个前进后退的走动过程,因为重点是放在海豚海狮表演上,所以他们没有使用骨骼动画,难免看上去有种真实度欠缺的感觉。图312北极狐的运动路径图2有骨骼生命体的绘制有骨骼的生命体主要是场景中的人物和海豚,海狮。骨骼动画的制作包括四个方面建模,制作骨骼,蒙皮,添加动作,下面有以海豚为例来详细介绍骨骼动画的制作。建模。因为海豚的模型较为复杂,自己没能够建模成功,所以利用了网上的资源,找到了一个海豚的模型。制作骨
31、骼。在制作骨骼时根据海豚的运动情况,需要制作4根骨骼来模拟。由于3DSMAX本身就带有骨骼工具,选择创建面板系统标准骨骼,修改骨骼对象的大小,然后单击海豚模型的始端,然后移动鼠标,在模型分段处单击一次,最后在模型的末端点击一次,点右键就结束骨骼的14创建了。图313海豚模型与骨骼蒙皮。蒙皮的作用就是把骨骼和海豚模型联系起来,就是把4根骨头和海豚进行绑定。首先选定需要蒙皮的海豚模型,然后选择修改器列表蒙皮,在参数面板里,点击添加,然后再列表中选择要绑定的4根骨头,比如说这里就选择了BONE1,BONE2,BONE3,BONE4。最后再测试一下,选择BONE4进行移动比较符合海豚的运动。添加动作。
32、海豚的运动就是尾巴上下摆动,移动BONE4来控制身体的摆动幅度,这样一个海豚的生命体就完成了。图314海豚的骨骼运动1533摄影机和镜头的设计在虚拟漫游中,摄影机和镜头的设置是不可缺少的,要从各个角度观察场景或者直接进入某个场景,就必须通过设置摄影机。摄影机可以分为自由摄影机和目标摄影机。自由摄影机的设置的步骤如下(1)选择创建面板摄像机自由,创建一个自由摄像机。(2)然后根据你所要选取的画面,反复调整摄像机的视野和位置的高低。目标摄影机的设置步骤跟自由摄影机类似,这里就不介绍了。我们很容易通过操作得到一个摄影机,重点是在于怎样去调整他,使他的效果符合我们的要求。本人认为摄影机的设计遵循两个原
33、则,一是要尽可能的展现出场景的特色和美观的角度,二是尽可能多的包含多的场景。下面就是摄影机二和摄影机四镜头下的场景。图315摄影机二镜头下的场景图316摄影机四镜头下的场景1634动画设计动画的设计在这个系统中运用的很多,有人物的挥手,海豚跳跃,海狮表演,展示区动物的运动等,动画效果的添加使整个系统的更加生动了。在这里,我们主要介绍海豚跳跃动作的制作。在前面的章节中已经介绍了海豚的建模和动作的设计,在这里就直接介绍动画的设计过程。制作动画最关键的内容就是关键帧的创建,只有创建了良好的关键帧加上合适的动作,才能形成一个优美的动画。海豚跳跃动作的关键帧的设计。首先将海豚移到你确定的初始的位置,按下
34、自动关键点按钮,这样你就可以在相应的位置设计关键帧了。这次的动画总共为一百帧,设置10个关键点。在第10帧的时候,向上移动BONE4,形成向上摆尾的动作,并使海豚向前移动,在第20帧的时候,向下移动BONE4,形成向下摆尾的动作,并使海豚向前移动,依次类推,在第50帧的时候,使海豚向上移动到空中,第60帧的时候回到水面,这样就形成了一个简单的跳跃动作。依次做到第100帧时,则海豚的表演动作就全部完成了,把模型导入到VRML浏览器中运行观察,基本上还算真实,流畅,下面是海豚的动作图的展示。图317海豚表演的动作1图318海豚表演动作2174三维虚拟漫游技术的实现41降低场景物体复杂度的方法海洋剧
35、场本身是一个非常庞大的系统,他本身由非常多的几何体构成,几何体的数据过大过多,会直接影响漫游过程中的速度。为了减轻系统的负担,必须降低场景中物体的复杂度,在毕业设计中用到最广泛的做法是运用贴图技术。411贴图技术指定到材质上的图形称为贴图,使用多种贴图能把最简单的模型变成丰富的场景,在很多系统中,贴图都是一种常用来呗降低物体复杂度的方法,只要运用的设当,他也能够营造出一个真实的氛围。下面就简单介绍此系统中运用到贴图的实例。这里选取了海洋剧场一楼的科普知识大讲堂。他如果通过建模实现,还必须绘制电梯、走廊通道等较为复杂的场景,在这里就选用贴图实现,具体的贴图步骤如下(1)运用POTOSHOP工具,
36、将图片素材进行修改,选取所要的事物,存储,一般可以存JPG或者GIF,根据需要设定。(2)然后打开3DSMAX中的材质编辑器,选择一个空白的材质球,点击漫反射贴图,选择2D位图,再从文件夹中找到刚才已经处理好的图片。(3)将材质球中的贴图拖动到你要贴图的平面上,观察贴图是否合适,进行适当的拉伸、翻转操作,这样基本上贴图的动作就完成了。图41科普知识大讲堂渲染图18在这个系统中还有运用到很多贴图技术的地方就是生命之源科普知识长廊。因为长廊中的每个介绍牌都是由贴图产生的,而他则不是能通过建模单独完成的,必须赋予模型材质才能有实际意义。图42海洋科普画廊42传感器的设置虚拟漫游中,可以通过添加传感器
37、来制作动画和声音的效果,这样就可以使观看者与场景中的事物有一个互动,更真实的去模拟海洋剧场的虚拟漫游。在本系统中,我们使用的触动感应器和范围感应器。421触动传感器触动感应器就是他必须设置一个触发器,有触发对象和操作对象,只有点击触发对象,才会对操作对象形成一定的动作。在本次系统中,运用到触发感应器的机会很多,如入口处的大门,检票口,海豚的跳跃,海狮的表演等。这里就选取大门的开启作为例子来介绍触动感应器的制作。大门是由独立的四扇门组成,在这里我只使用了一个触动感应器来控制四扇门的运动,具体的步骤如下(1)对四扇门进行建模,并且贴图,对材质设置透明度,这样可以使玻璃门更有质感,详细的步骤就不重复
38、介绍了。(2)对四扇们进行关键帧动画的设计,在第一帧的时候门是关闭的,第一百帧的时候门是开启的,调整门开启的角度,并用播放功能进行观察测试。(3)选择创建面板辅助对象VRML97触动感应器,在场景中创建一个触动感应器,点击“拾取触发对象”,选择19第一扇门,点击“拾取操作对象”,操作对象为四扇门,这样就完成了门的开启工作。(4)在VRML浏览器中对它进行测试,点击第一扇门,成功的看到四扇门缓缓开启,这说明,测试成功。下面通过截图观看门的状态变化。图43未触发的状态图44触发后半开启状态20图45触发后全开启状态422范围传感器范围传感器是指当人走进这个范围内是才会触发这个事件。在此系统中,有运
39、用到范围传感器的是出口处的门,以此为例介绍范围传感器的制作。出口处的门是由两扇门组成,具体的制作步骤如下(1)建模。对两扇扇门进行建模,并且贴图,对材质设置透明度,这样可以使玻璃门更有质感,详细的步骤就不重复介绍了。(2)创建关键帧动画。在第一帧的时候门处于关闭状态,第一百帧的时候,两扇门都分别向左向右移动到最旁边。(3)选择创建面板辅助对象VRML97范围感应器,在3DSMAX中创建一个感应范围。(4)最后导出进行测试。最终的结果显示的它不管在是不是这个感应范围内都会出现关门和开门交替的动作,所以我们还必须对感应器时间的初始值进行设置。原始代码如下DEFBOX1161TIMERTIMESEN
40、SORLOOPTRUECYCLEINTERVAL3333,DEFBOX1162TIMERTIMESENSORLOOPTRUECYCLEINTERVAL3333,修改后的代码为DEFBOX1161TIMERTIMESENSORLOOPFALSECYCLEINTERVAL3333,DEFBOX1162TIMERTIMESENSORLOOPFALSECYCLEINTERVAL3333,ROUTEPROXSENSOR01ENTERTIMETOBOX1161TIMERSTARTTIMEROUTEPROXSENSOR01ENTERTIMETOBOX1162TIMERSTARTTIME经过修改,门在人未处于
41、范围感应内是关闭状态,而人在感应区内时则作开启动作。21图46人未在感应范围内门的状态图图47人在感应范围内门开启状态图43动画代码的生成在此虚拟漫游系统中,涉及到动画效果物体很多。在一个静态的场景中增添动画效果,使场景更加立体、真实、生动。动画效果的实现一般都需要借助与关键帧,下面就以海洋剧场中的一海洋动物跳崖企鹅为例产生的代码。DEFPLANE90TRANSFORMTRANSLATION244268061735ROTATION1001572SCALE01028022016522SCALEORIENTATION1000001377CHILDRENDEFPLANE90TIMERTIMESENS
42、ORLOOPTRUECYCLEINTERVAL3333,DEFPLANE90POSINTERPPOSITIONINTERPOLATORKEY0,003,006,009,012,015,018,021,024,027,03,033,036,039,042,045,048,051,054,057,06,063,066,069,072,075,078,081,084,087,09,093,096,099,KEYVALUE244268061735,244668061735,245668061735,24768061735,248868061735,250768061735,252668061735,2
43、54368061735,255768061735,256768061735,257168061735,256268061735,25468061735,251168061735,247968061735,245268061735,243468061735,24368061735,243568061735,244468061735,245668061735,246968061735,248168061735,249268061735,249868061735,249968061735,249268061735,24868061735,246468061735,244668061735,24296
44、8061735,241468061735,240368061735,239968061735,SHAPEAPPEARANCEAPPEARANCEMATERIALMATERIALDIFFUSECOLOR058820588205882AMBIENTINTENSITY10SPECULARCOLOR000SHININESS0145TRANSPARENCY0TEXTUREIMAGETEXTUREURL“32GIF“23GEOMETRYUSEPLANE100FACESROUTEPLANE90TIMERFRACTION_CHANGEDTOPLANE90POSINTERPSET_FRACTIONROUTEPL
45、ANE90POSINTERPVALUE_CHANGEDTOPLANE90SET_TRANSLATION图48跳崖企鹅的动画44声音效果设计声音效果是VRML语言中一个重要的组成部分,也是一个他的特色。在虚拟漫游中加入一定的声音效果,可以使游览者在参观海洋剧场时,更有气氛,更加身临其境。声音的效果使一个静态的系统变的更加丰富多彩。在本系统中,也运用到了声音效果,如走进大门时你就能听到“欢迎光临宁波海洋世界”,在二楼观看表演时也能够听到背景音乐等。这里就以向导的语音作为例子来简单介绍声音效果的设置。一个声音效果有两个部分组成,一个是音频剪辑,另一个则是声音。音频剪辑主要是连接音频文件的,而声音则是
46、控制音频文件的播放的。在导成VRML时,声音文件最好是WAV格式,一般MP3的格式可能会听不到声音。声音的参数中,强度表示音量,10表示最大音量。优先级表示在场景中有多个声音,则可以设置声音的相对重要性。0表示最不重要,1表示最重要。最小正面/背面、最大正面/背面表示听到声音的范围。声音效果设置的步骤如下(1)打开创建面板辅助对象VRML97音频剪辑,在URL中填写声音的名称,选择循环和在世界加载时开始,并在场景中拖出音频剪辑。(2)打开创建面板辅助对象VRML97声音,将最大背面与最大正面设置50,拾取刚才的音频剪辑,在场景中拖出声24音。在这里需要注意的是,箭头的方向要朝着虚拟人物行走的方
47、向,这样才能听到声音,这样基本上就完成了声音效果了。接下来就是将场景导出进行试听,如果效果不佳,再做调整。图49声音的设置声音的VRML代码DEFSOUND01TRANSFORMTRANSLATION122603283SCALE017710177101771CHILDRENDEFSOUND01SOUNDDIRECTION001INTENSITY1LOCATION000MAXBACK50MAXFRONT50MINBACK1MINFRONT1PRIORITY0SPATIALIZETRUESOURCEDEFAUDIOCLIP01AUDIOCLIPDESCRIPTION“URL“HUANYINWAV“
48、PITCH1LOOPTRUESTARTTIME1255软件的运行效果51运行环境说明系统运行在CPUINTELCORE2T6600220GHZ,操作系统WINDOWS732位操作系统,内存200GB,显卡NVIDIAGEFORCEGT240M的计算机。最后在IE80上运行VRML,实现虚拟漫游。52部分演示画面将所拍摄的实物组图与虚拟漫游中的场景组图作比较,来测试所创建的虚拟系统是否达到标准。首先是剧场正面的实景照片和虚拟场景的对比。图51剧场正面虚拟场景图26图52剧场正面实景图二楼表演池的实景照片和虚拟场景的对比。图53二楼表演池的虚拟场景图27图53二楼表演池的实景图一楼入口处的实景照片
49、和虚拟场景的对比。图54入口处的虚拟场景图28图55入口处的实景图对比效果显示,基本能够还原海洋剧场的现实场景,所以就不一一举例了。296结束语61本文获得的结论本次毕业设计是利用3DSMAX和VRML实现宁波海洋世界的三维立体漫游,为儿童提供一个学习海洋知识的平台,让游客不出门也能感受海洋世界的多姿多彩。由于本人的基础较差,可能在场景的绘制中无法达到与真实场景一摸一样,模拟海洋动物的运动也可能较为简单,但是此虚拟漫游系统基本能够为游客展示一个完整的海洋剧场,基本完成本项研究中所预期达到的效果。62感悟和体会在这几个月的学习中,终于把毕业设计的完成了。当初在选题时,由于学过3DSMAX和VRML软件,所以就挑选了这个适合自己的主题。在后来的工作中,发现很多所学的东西往往达不到我们所要的要求,这就必须督促我们补充新的知识,从只懂用基本工具建立模型到运用贴图材质,从简单的动画到骨骼动画,这段过程中,我觉得自己是快乐的,学到了很多。虽然以前做个类似的漫游程序,但远不及这次的工作量,从亲自到海洋剧场采集素材到把素材整理成一幅幅的贴图,这是很耗费的时间的,需要很大的耐心,而且由于经验不足,很多图片的拍摄并不符合贴图的需要,这就造成了很大的困扰,所以在漫游系统中看到有些图片存在一定的失真,还有就是没有能够拍摄全部图片导致场景中可能有