塔里木大学学报 第27卷 文章编号:1009-0568(2015)02—0090一o4 基于3 DS MAX和Unity3 D校园虚拟漫游系统的研究 李旭王世发慈为涛司春景姚江河 (塔里木大学信息工程学院,新疆阿拉尔843300) 摘要本文以塔里木大学数字虚拟漫游的研究为主要内容,利用3DS MAX和Unity3D引擎等工具,设计完成塔里木大学虚拟 漫游系统。系统以第三人称视角进行虚拟校园漫游,使用者可直观自控角色的一举一动,增加系统交互性。此系统的建设可 为塔里木大学提升文化内涵起到宣传作用;为校园规划提供参考资料和依据;促进校园管理数字化,有利于实现大学远程教 育,加快校园数字化建设。 关键词塔里木大学;数字;虚拟漫游系统 文献标识码:A DOI:10.3969/j.issn.1009—0568.2015.02.017 中图分类号:TP391.9 The Research of Based on 3 DS MAX and Unity3 D Virtual Reality System Li Xu Wang Shifa Ci Weitao Si Chunjing Yao Jianghe (College of Information Engineering,Tarim University,Alar,Xinjiang 843300) Abstract This paper studies the digital Tarim University Virtual Tour system.By 3DS MAX and Unity3D engine,visual identity Vir- tual Tour system of the school was designed completely.In third—person perspective virtual campus roaming system design,the user can intuitively controlled eharaeterg every move,strengthening the system interactivity.Construction of this system can play an advoea— cy ro]e for the Tarim University to create a good image,enhance cultural taste,References the basis can be provided for the construc— tion of the campus planning,promoted the management and unified of the campus,conducive to university education,accelerate the construction of digital campus. Key words digital;Tarim University;campus roaming 并且对校园的进一步数字化建设和远景规 计算机科学研究的一个重要方向就是虚拟现实 传与展示,技术,“数字校园”引入虚拟现实技术,可以为学校的 划提供真实可靠的可视化平台。本文研究以校园虚 宣传和游览提供一种新的方式和方法。传统的虚拟 拟漫游系统为研究对象,系统采用三维立体的方式以 现实技术,如基于静态图像处理的初级虚拟实境技术 QuickTime VR和虚拟现实建模语言VRML,虽然精 增强立体感,而且还可以以第三人称视角漫游整个校 确性较高,但交互性差,漫游速度因其本性影响,系统 结构过于繁冗,并且都是以第一人称的视角来设计 园,借助3DS MAX三维建模软件和Unity3D引擎开 发一款校园虚拟漫游系统,可以使用户对学校对学校 的。校园虚拟漫游系统的研究,有利于校园形象的宣 的了解有更直观、更具体。收稿日期:2014—10—16 基金项目:塔里木大学大学生创新创业训练计划项目(2013107570025)。 作者简介:李旭(1983一),男,讲师,硕士,主要研究方向为虚拟现实、农业信息系统等。 为通讯作者 E—mail:lixu2866@126.com E—mail:lixu2866@126.com 第2期 李旭等:基于3DS MAX和Unity3D校园虚拟漫游系统的研究 9l 1 系统设计思想 些插件可以使开发者多快好省地完成一些功能l2]。 虚拟漫游系统开发的必要条件是要具有软件工 2.2场景建模技术 虚拟场景中漫游系统的核心是三维模型,其好坏 程的思想,从软件需求分析人手,各个模块功能的设 计与实现。首先使用AutoCAD软件绘制学校的平面 图,利用相机拍摄相关建筑物图片,对测量不准确的 建筑物进行补测,再利用3 DS MAX三维建模软件对 将影响系统漫游效果以及场景的逼真程度 ]。在做 好数据采集、建筑测量等前期准备后,就要进行校园 物体的建模工作了。建模是根据前期的造型设计,通 过3D MAX软件绘制出校园物体的三维模型。需要 建模的物体有很多,而且模型的创建也要经过建模、 校园中建筑物进行建模,然后将建模文件导人到U— nity引擎中,第二步进行模型的贴图,添加灯光效果。 构建场景完成后再进行系统交互设计,该交互设计 包括漫游行走的交互、界面菜单的交互,该漫游系统 完成后进行性能测试,生成可执行文件和网络文件, 此文件更具有精确性、真实性和无限的可操作性。整 个开发流程如图1所示。 图1虚拟校园系统开发流程 2设计中的关键技术 2.1 Unity3D Unity3D是一个多平台的专业3D游戏开发引 擎,它具有出色的高级渲染效果和用户定制支持,具 有高度优化的图形渲染管道,支持DirectX和Open. GL¨ 。其内置的NVIDIA、PhysX物理引擎能够实现 逼真的互动,并提供了支持柔和阴影与烘焙高度完善 的光影渲染系统。而且Unity 3D具有方便的可视化 创作环境,使用常见的C#、JavaSeript和Boo编程语言 作为脚本语言,并且针对Unity引擎,还有很多出色 的插件供开发者使用,如PlayMaker、NGUI等,使用这 材质和贴图、灯光、渲染等一系列步骤,因此场景建模 是一个细致而繁重的过程。 2.3漫游交互技术 漫游是虚拟校园的关键,交互是实现漫游的方 式_4 J。Unity引擎中的交互功能是通过对游戏物体编 写控制脚本来实现的。Unity同时支持JavaScript、C# 和Boo三种脚本语言,而且Unity引擎还支持在同一 个项目中同时使用多种脚本语言来进行脚本的编 写 。 ’ 2.4碰撞检测技术 碰撞检测技术是模拟真实环境中在遇到障碍物 时物体发生的本能反应,很多时候,当我们的主角与 其他GameObject(游戏物体)发生碰撞时,我们需要 做一些特殊的事情,比如遇到墙壁时,不能前行,避 免角色在场景中出现穿墙而人等一些离奇的行为。 在Unity3d中,能检测碰撞发生的方式有两种,一种 是利用碰撞器,另一种则是利用触发器。本文研究利 用碰撞器进行碰撞检测 j。 . 本研究的校园虚拟漫游系统是以塔里木大学校 园为设计目标的。校园整体呈长方形,南北窄,东西 长。教学区由重点实验室、教学楼和图书馆等组成; 办公区由行政楼和后勤保安等部门组成;生活娱乐区 由小市场、食堂、学生宿舍、澡堂、操场等组成;以及由 道路、花草、树木、路灯等小品构成的辅助设施。 3 校园虚拟漫游系统详细设计 3.1 数据采集 为了将校园环境中的建筑物、道路、花草树木等 对象描述的更加生动准确,以达到逼真的仿真效果。 首先根据地图及影像图绘制出校园的CAD平面图, 平面图对校园中空间的构成十分重要。然后对花草 塔里木大学学报 第27卷 树木、建筑物等用数码相机拍摄清晰照片。许多模型 5.对地面、天空、楼梯、墙壁等场景添加Physics 的纹理主要来自数码照片,拍摄的照片整合了抠像、 菜单下的Box Collider或者Mesh Collider碰撞组件, 校色、摄像机贴图、光栅与矢量绘画、基于样条的变 在漫游时避免出现穿墙的错误效果。 形、运动模糊、景深以及支持立体视效,在图像处理软 6.光线进行调节,达到所需的照度和灯光色彩效 件中进行杂质去除、大小调整、对比度、亮度和锐化等 果,体现空间层次感。 效果处理,改进渲染传递并把它们融合到实拍镜头 3.4角色漫游的设计与实现 中,制作成模型的材质贴图,存放在纹理库中。 角色漫游的设计主要包括对角色的控制和对摄 3.2建模及渲染输出 像机的控制两部分内容,角色是漫游系统的主角,而 本文研究建模主要是二维图形制作成三维图形, 摄像机就像角色的眼睛一样。在本系统中角色漫游 主要是将图形的轮廓通过线、多边形等制作出来,然 是以第三人称视角来实现的,使用者可以直观的观察 后通过对图形的挤压、车削、放样等方法,制作出相应 到自己控制的角色人物的一举一动,使系统的交互性 的模型。首先考虑制作模型的轮廓,并对其结构和形 更加显著。为了完成通过控制角色移动来实现场景 态进行规划,根据其结构特征,分为规则物体和不规 漫游的功能,摄像机必须紧紧跟随角色移动。 则物体,一般规则物体使用堆砌建模法,而不规则物 实现对角色控制的基本原理是,首先在场景中导 体使用细分建模法,最后根据部分网格的拓扑结构, 人一个带有动画的游戏角色,然后通过编写脚本来控 制作相应的模型。模型的创建大致要经过建模、材质 制角色。例如用户按下w、A、S、D按键后,首先通过 和贴图、灯光等一系列步骤。 脚本控制角色播放走路动画,同时控制角色的坐标位 在整个三维创作中渲染是一项重要的工作。在 置在相应方向上进行移动,这样就实现了角色在场景 前面所制作的材质与贴图、环境反射和灯光的作用等 中走动的效果,再通过脚本控制摄像机跟随角色移 效果,在经过渲染之后才能更好地呈现出来。在3DS 动,并与角色保持一定的相对距离,就实现了简单的 MAX中主要包括快速渲染、实时渲染和最终渲染等 场景漫游功能。 类型。 3.5 GUI界面的设计和实现 本文研究在渲染时运用到了最终渲染,此插件的 在本漫游系统中,GUI界面是用户与系统之间的 主要用途是将灯光和材质能够更好的渲染出来,比 桥梁,通过GUI界面的引导,用户可以轻松的上手本 3DS MAX自身所带的渲染器要更加的精细。 系统,快速熟悉系统的操作方法,并且用户还可以通 3.3模型的导入 。 过自己的选择控制角色进入不同的场景,实现相应 首先进行模型导人,然后进行编辑组合,其具体 的漫游功能。 步骤如下: 在本系统的GUI界面中,共创建了三个菜单项, 1.首先运行Unity 3D,第二步是工程项目的建 分别为Select Scene(场景选择)菜单、How To Use(使 立。Layers选择合适的窗口模式进行设计。 用说明)菜单和Visit Tarim(访问校网)菜单。 2.Create Terrain菜单通过创建地形以及编辑地 本系统中GUI界面的创建,是通过先创建相应 形:Directtion Light通过创建灯光,编辑其属性,设置 的预设,然后在运行时对预设进行实例化来实现的。 相应效果;Seting Renter通过设置天空盒,为天空盒 在创建预设时,首先在工程视图中,右击:Create 添加需要的材质贴图。 一>Prefab。此时Prefab为灰色,然后从Hierarchy窗 3.通过3D MAX导出成.fbx格式的各类建筑物 口中将某一游戏物体拖到该Prefab上,此时可以看到 模型文件,从项目中用鼠标拖动到场景中进行设置和 Hierarchy窗口中该物体变成了蓝色,至此Prefab就 位置摆放。 创建完成了。 4.重新指定模型中丢失的材质和贴图。 在本系统GUI界面设计过程中,首先创建一个