虚拟3D校园系统的设计与实现
2016-04-25车月琴张瑞芳吕米佳
车月琴,张瑞芳,吕米佳
(1.广州城市职业学院网络与教育技术中心,广东 广州 510405;
2.广州城市职业学院艺术设计系,广东 广州 510405)
虚拟3D校园系统的设计与实现
车月琴1,张瑞芳1,吕米佳3
(1.广州城市职业学院网络与教育技术中心,广东 广州 510405;
2.广州城市职业学院艺术设计系,广东 广州 510405)
摘要:随着高校扩建以及招生宣传的竞争,集成校园导航、景观展示、招生宣传、校园信息化管理的新一代三维虚拟校园系统成为大势所趋。文章结合广州城市职业学院的实际,基于Unity3D平台,采用3DMAX为场景建模工具,通过java script和C#语言实现交互,最后与Html的整合完成集成虚拟校园的开发。
关键词:虚拟校园系统;Unity 3D;场景建模;招生宣传
一、引言
随着计算机技术的发展,校园信息化建设也进入了快速发展,虚拟校园作为校园信息化建设的重要组成部分,成为了发展的趋势。传统的虚拟校园是建立在二维平面地图和影像地图的基础上,无法满足学校对外招生宣传、校园导航、信息化管理等的多元化功能需求[1]。三维虚拟校园比二维平面直观形象,更逼近真实的校园场景,从而受到各大院校的热捧。另外三维虚拟校园还具有智能化的查询功能和管理后台功能,是虚拟校园建设的革命性突破。
本文将从招生宣传的角度出发,从需求分析,关键技术介绍,制作软件介绍,系统设计开发流程,实际设计与实现等方面进行阐述说明。
二、需求分析
依据广州城市职业学院的实际情况,结合招生宣传的目的,设计基于招生宣传的虚拟3D校园系统。
(一)总体需求
对于了解一个学校,首先要了解它的全貌,因此虚拟3D校园的功能需求首要是校园3D虚拟浏览。要做到这一点要求是校内、外用户均可以通过互联网对学校各校区进行三维的虚拟浏览,包括的功能如下:
1.校园3D在线同步漫游。通过漫游,了解整个校园的全貌。
2.校园2D地图同步漫游。通过地图,直观了解校园各建筑物的地理位置。
3.校内楼宇、景观等的语音与网页介绍。通过交互技术,介绍校园的楼宇景观。
4.楼内实景360度展示。这里表现在可以通过用鼠标点击指向左边的箭头,或是指向右的箭头进行浏览,在浏览的过程中用户以该点为圆心旋转360度观看四周的校园景观。
另外,对于建筑物,如果能够在建筑物的位置处进行标注,并显示建筑物的名字及其相关信息等数据,这样浏览者对校园内的建筑有一个更深入的了解。
(二)地图的切换
目前广州城市职业学院拥有五个校区,即广园南校区、广园北校区、海珠校区、滨江校区及越秀校区5个校区。如果想要浏览各个校区的景观就应当实现地图的切换功能。但是在实现切换时应当注意,在之前的地图之上显示的所有的信息应当全部消失。
(三)地图放大缩小功能
浏览者只需从地图上点击放大、缩小的功能键即可实现地图的放大与缩小。但是需要注意的是在用户对地图的放大与缩小操作时,地图上的与特定地理位置相关联的信息,如建筑物的名称等也应当发生相应的变化,否则会给用户的浏览带来不便,从而造成误区。
(四)地图的漫游
用户可以通过地图漫游实现地图显示区域的切换。有以下两种方式的漫游:
1.地图的拖动:当用户点下鼠标左键后,随意拖动鼠标时,地图的显示区域及位置便随着鼠标的拖动而发生变化,当放开鼠标左键时,地图的位置固定不便。
2.点击功能键:在这种漫游方式中,用户通过点击屏幕上的上、下、左、右功能键实现地图的向上或是向下移动,向左或是向右移动。
在实现漫游功能时,要注意地图的边界,当地图的边界与可视界面的边界重合以后应禁止浏览者继续将地图向重合边界的相反方向继续移动,也就是碰撞检测技术的应用。
(五)支持移动版的查看
三维虚拟校园系统应该支持iPhone、iPad、Android等移动终端设备访问,可以通过移动终端拖动、放大、缩小地图,点击兴趣点查看详细信息。
三、关键技术与主要开发工具
(一)关键技术
1.碰撞检测技术
碰撞检测是防止在遇到墙壁或者其他障碍物时,使用者在场景中穿墙而入或穿过障碍物等的奇怪行为。Unity3D提供了Mesh Collider碰撞检测组件,该组件可以有效计算模型表面的网格自动生成碰撞面[2],从而避免碰撞。
2.场景建模技术
建模是根据前期的造型设计,通过3D MAX或者其他建模软件绘制出校园物体的三维模型。需要建模的物体有很多,包括教学楼、学生宿舍、图书馆,校道、校园树木等,而且模型的创建也要经过建模、材质和贴图、灯光、渲染等一系列步骤,因此场景建模是一个细致而繁重的过程[3]。
3.漫游交互技术
Unity 3D引擎中的交互功能是通过对游戏物体编写控制脚本来实现的。Unity 3D同时支持JavaScript、C#和Boo 三种脚本语言,而且Unity 引擎还支持在同一个项目中同时使用多种脚本语言来进行脚本的编写[4]。
(二)开发工具
1.Unity 3D
Unity 3D是轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,有直观的编辑环境,是一个全面整合的专业游戏引擎和三维建筑的平台[5]。Unity 3D性价比高,可以发布成网页浏览的方式,用户不用下载客户端,便可直接体验。Unity 3D支持各种脚本语言包括Java script、C#、Python,兼容各种操作系统,真正的实现了跨平台[6]。
本论文中主要用Unity 3D整合三维模型,最终合成输出网页版的3D虚拟校园系统。
2.3D MAX
3D Studio Max,常简称为3D Max或MAX,是Discreet公司开发的(后被Autodesk公司合并)基于PC系统的三维动画渲染和制作软件[7]。
用于场景可视化建模的软件主要有3DMAX、MultigenCreator、VRmap等,通过对不同建模软件所完成的作品进行比较,可以发现:在精细程度方面,3DMAX的精细度最好;MultiGenCreator善于对大场景地理环境进行可视化再现及浏览,操作简单;Creator比较适用于大型建筑物的仿真开发与应用。因此,3DMAX建模软件较适合对中、小区域进行三维可视化[8]。
3D MAX常用的建模技术有基本几何体建模、二维图形建模、挤压建模、车削建模、放样建模、多边形建模等技术6,结合不同的对象的特效需要选择合适的建模技术。例如,像楼房建筑的模型主要采用标准的长方体或圆柱体等标准几何体实现,必要时可以使用纹理技术修改完善,平坦地面建模主要利用平面建模工具实现对象模型的建立,起伏地面的建模可结合二维图像建模技术实现。
四、虚拟校园系统设计开发流程[9]
摄影图片地理数据信息采集数据预处理建筑物CAD场景绘制3DMAX构造复杂模型导出复杂模型优化场景模型在Unity3D编辑器中组合优化模型交互功能设计场景渲染脚本优化构建多平台虚拟校园系统的发布
图1虚拟校园系统设计开发流程
虚拟3D校园系统的设计开发,首先收集摄影图片、卫星地图、CAD电子图等,然后利用虚拟场景,软件建模,并在Unity 3D编辑器中组合优化模型,同时增加交互功能,并重新对场景等进行优化,最终合成不同平台的虚拟校园,从而进行发布。本论文中,虚拟3D校园系统的开发是基于Unity3d平台开发,运用3dmax建模软件进行对场景建模,通过JavaScript和C#计算机编程语言实现人机交互,最后结合html进行融合导出,从而完成虚拟校园的开发。
五、虚拟校园系统的设计与实现
(一)数据的采集
要使校园环境中的建筑物、道路、花草树木等对象描述的更加生动,达到逼真的效果。首先要根据地图及影像图绘制出校园的CAD平面图[10]。模型的纹理大部分来源于数码照片,因此在前期需要收集高清的数码相机图片,并在Photoshop等图像处理软件中进行杂质去除、大小调整、对比度、亮度和锐化等效果处理,最终制作成模型的材质贴图,存放在纹理库中。
(二)三维建模
本设计中使用3D MAX软件进行三维建模,建模时要采用搭积木的方式进行组合拼接。模型建立后,需要对模型的每一部分分配材质和贴图。同时,对前期拍摄和处理过的图片可以根据建筑物的真实情况进行二次处理,以达到逼真的效果[11]。Unity 3D平台的Terrain系统可以创建校园环境的绿化地、道路及植物,创建后再对地形进行贴图处理以及布置各种植物。
(三)模型贴图优化
三维模型制作完毕后,需要对整个场景的贴图进行烘焙、压缩、优化。所谓贴图,就是用PS等平面软件制作材质平面图,覆盖于利用Maya、3DMax等3D制作软件建立的立体模型上的过程。烘焙贴图是将场景表面的光影存入到文件中, 以提高场景的真实感,增加场景的视觉效果[11]。
(四)导入模型
要将虚拟的场景交互并以多种形式输出,需要将3Ds Max创建的虚拟场景模型导入Unity 3D编辑器中,需要安装相应的插件。同时,要重新指定模型中丢失的材质和贴图,重新对光线进行调节,达到所需的照度和灯光色彩效果,体现空间的真实感。
(五)交互设置
交互技术是三维虚拟校园设计的关键。虚拟校园的使用者主要面向学生、老师或者家长,因此三维虚拟校园的控制要以方便快捷、简单直观为目标[6]。
要使用户有真实的体验感,在Unity3D里应该设置碰撞检测,添加天空盒、太阳光晕、背景音乐等交互行为。通过交互对应的命令,可以实现行走、动画相机、场景切换等动作。在鼠标属性中设置脚本命令,可以实现用鼠标控制观察者场景中自由行走、漫游等。利用脚本还可以为虚拟场景添加说明文字、背景音乐、解说词等[11]。
(六)场景渲染脚本的优化
三维虚拟校园最终将发布为网页浏览文件,因此,除要求计算机的运算速度尽量高外,还要求建立的三维立体虚拟场景模型尽量简单,否则容易造成用户体验不佳。因此,需从建模、贴图、渲染及控制代码等方面对软件运行性能进行优化设计[12]。
1.场景优化。场景优化主要是控制模型的面数。建模时都是采用单面建模,删除看不到或不需要的面。地形及道路的精度可适当降低,少用光滑曲面。
2.渲染优化。渲染优化主要是优化贴图和优化光照渲染。透明材质在渲染中要使用较多的系统资源,因此可将相同贴图的窗户玻璃合并为一个物体,把多个面的贴图合并为一个贴图,尽量共享材质,对于仅纹理不同的材质可以把纹理组合到一张更大的纹理中。
3.脚本优化。编写脚本时,尽量使用静态类型替代动态类型,使用触发器触发脚本的执行,并少使用每帧都执行的脚本。
(七)多平台构建
目前,Unity 3D可以支持Web、PC、IOS、Android、Flash、Apps等主操作系统和服务器平台。Unity 3D能够很好的支持WAMP(Windows+Apache+MySQL +PHP)、LAMP(Linux+Apache+MySQL+PHP)和IIS(Internet Information Services) 等常用Web应用程序平台。因此,可以使用IIS发布不同平台的系统。
七、结语
虚拟现实技术的广泛应用拓宽了人们获取信息的感知通道,增强了人们对复杂动态事件的感知能力,将计算机的应用提高到一个崭新的阶段,其未来的发展不可估量。限于篇幅,本文还有很多需要研究和完善的地方,未来可以在理论以及技术结合层面,加强对校园地形高精度仿真,虚拟校园对于招生宣传等的实用性方面进行深入研究,希望现有的介绍对读者构建虚拟3D校园有所启发。相信随着各项技术的逐步发展成熟,虚拟校园的创建会有更大的发展空间,虚拟校园也会从多元化的角度发展。
参考文献:
[1] 藉成章.潍坊科技学院虚拟校园的设计与实现[D].中国海洋大学,2010.
[2] 马瑞.基于Unity3D 的多平台三维虚拟数字校园的设计与实现[J].蚌埠学院学报,2014(04):13-16.
[3] 李旭,王世发,慈为涛,司春景,姚江河.基于3DS MAX和Unity3D校园虚拟漫游系统的研究[J].塔里木大学学报,2015(2):90-93.
[4] 张荣华.几何建模技术在虚拟校园漫游系统开发中的应用[J].计算机工程与设计,2008(23):6146-6151.
[5] 韩万江,姜立新.系统工程与软件工程[J].计算机应用,2010(S1):212-214.
[6] 朱惠娟.基于Unity3D 的虚拟漫游系统[J].2012(10):36.
[7] 3ds Max.欧特克[引用日期2014-05-15].
[8] 刘海玲.基于WebGIS的三维数字校园设计与实现[D].南昌航空大学,2011(6).
[9] 章万静,刘英杰.三维虚拟校园体感交互系统设计与优化研究[J].电子制作,2014(23):59.
[10] 李旭,王世发,慈为涛,司春景,姚江河.基于3DS MAX和Unity3D校园虚拟漫游系统的研究[J].塔里木大学学报,2015(2):90-93.
[11] 孟祥增,马萍,刘瑞梅.三维虚拟场景的创设与立体播放[J].中国电化教育,2011(8):125-128.
[12] 刘嘉夫,齐昕.基于Unity3D的三维虚拟校园设计[J].内蒙古科技与经济,2015(06):102-103.
(责任编辑潘志和)
Design and Implementation of Virtual 3D Campus System for Enrollment—A Case Study to Guangzhou City Polytechnic
CHEYue-qin,ZHANGRui-fang,LVMi-jia
(Guangzhou City Polytechnic, Guangzhou 510405, China)
Abstract:With the expansion of competition and college admission publicity, a new generation of three-dimensional integrated campus virtual system, which consists of campus navigation, school profile display, enrollment information, campus information management, becomes a popular one. In this paper, experience of Guangzhou City Polytechnic is shared. Based on Unity3D platform, the 3Dmax is used as the scenario modeling tools, to be interacted through java script and C # language, and finally, the integration of the Virtual Campus system with the Html is completed.
Key words:virtual campus system; Unity 3D; scenario modeling; enrollmen
中图分类号:G64
文献标识码:A
文章编号:1674-0408(2016)01-0068-04
作者简介:车月琴,女,广州城市职业学院网络与教育技术中心助理实验师,硕士,主要从事教育电视、信息化教育。
收稿日期:2016-03-10