虚拟现实技术-实习报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
虚拟现实技术小组实习报告
学院遥感信息工程学院
班级XXX班
组员
汤XX 王XX 郑XX
指导教师XXX
日期20XX.11.XX
(一)小组实习报告
一、实习目的
1、了解和熟悉了3ds max、unity 3D等虚拟现实设计建模及开发软件各自的功能和操作。
2、了解并掌握利用c++进行虚拟现实漫游系统开发的基本算法和理念。
3、加深对课本所学的理论知识的理解和掌握,掌握虚拟现实技术的基本概念、原理、分类、特性等,学会利用一些常用的虚拟现实设计软件进行虚拟现实系统的开发设计。
二、实习内容
设计并实现了古代小镇五侠镇虚拟现实的漫游系统。本次实习我们小组在3DS MAX里进行三维场景创建、修改导出为FBX模型之后,导入unity3D再通过使用unity3D 进行三维漫游系统设计与开发,最后导出exe文件。
三、实习实现方案
对于此次虚拟现实漫游系统设计,我们组考虑以古代小镇为背景场景设计建模漫游系统对象,所建立的漫游系统将包括小镇房屋、地形、河流、喷泉、天气变化等基本对象,使用unity3D添加河流、光照、喷泉等特效;使用脚本编辑完成天气的变化;每个房屋和树木进行碰撞体添加之后完成碰撞检测功能;通过添加粒子系统完成了落叶等效果。
3.1 3dsmax简介
3dsmax是美国Autodesk公司旗下优秀的电脑三维动画、模型和渲染软件,全称:3D Studio MAX。该软件早期名为3DS,是应用在dos下的三维软件,之后随着PC机的高速发展,Autodesk公司于1993年开始研发基于PC 下的三维软件,终于在1996年3D Studio MAX V1.0问世,图形化的操作界面,使应用更为方便。3D Studio MAX从V4.0开始简写成3dsmax,随后历经V1.2,2.5,3.0,4.0,5.0(未细分).....Autodesk坚持不懈的努力不断更新更高级的版本,逐步完善了灯光、材质渲染,模型和动画制作。广泛应用于三维动画、影视制作、建筑设计等各种静态、动态场景的模拟制作。
3.2 Unity 3D简介
Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游
戏开发工具,是一个全面整合的专业游戏引擎。Unity类似于Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的图型化开发环境为首要方式的软件。其编辑器运行在Windows 和Mac OS X下,可发布游戏至Windows、Mac、Wii、iPhone、WebGL(需要HTML5)、Windows phone 8和Android平台。也可以利用Unity web player插件发布网页游戏,支持Mac和Windows的网页浏览。它的网页播放器也被Mac 所支持。
四、实习步骤
4.1步骤流程图
图 1 五侠镇实现技术流程
4.2 操作步骤
4.2.1 基础地形构建
按照设计方案,该区域地形的总体目标效果为:远处一角为高低起伏的山峰及较低的丘陵,中部大范围为平原,一条河流贯穿平原中央。
因为整个基础地形是虚构想象的,因此并不需要实地的地物与相关数据以供小组成员参考。在本次实习中,小组成员利用通过Unity软件自带的地形设置(Terrain)功能,通过Hierarchy面板中的目标高度绘制,平滑高度两个地形绘制工具,通过设置笔刷类型,大小等完成了地形起伏的绘制,最终绘出包含高山,丘陵,平原,河道四类地物的地形图。接着利用纹理绘制工具,根据地形特点给相应地形进行贴图,最终构建出有四种贴图的完整地形。
图二纹理绘制工具界面
最终得到的地形效果示意图如下:
图三地形效果
4.2.2 建筑物模型搭建
搜集符合预期主题的合适的建筑模型,依照目标设计与地形的特点,利用3ds max 软件将建筑物模型大体分为两个部分,分别组合在一起,为小镇中央的河流预留出空间。同时调整各个建筑物之间的大小比例,使其符合现实特点。最终形成一个完整的武侠小镇。部分建筑物与整体模型如下。
(图)
之后根据小镇的范围,在其中进行材质贴图处理,将地面,墙壁等修改成不同的石头材质,符合古风武侠小镇的风格。小镇模型搭建完成后导出3ds max并导入Unity中,与之前所做的地形进行组合,形成了隐匿于山脚平原的小镇效果。
(图)
4.2.3 人物模型及一三人称漫游的实现
我们首先利用3ds max搭建人物模型,并将成品结果导入Unity,但是导入的人物模型因为缺少骨骼和相关的动作导致人物四肢无法运动,第三人称下人物移动类似僵尸。因此我们选择了在Asset Store上进行了筛选,最后选择了一个日本动漫男性角色形象Taichi的人物模型作为我们相关的人物外表。该人物模型拥有完整的骨骼系统和部分动作动画,是一个十分完整的模型。人物模型如下:
图四选用人物模型
在选择,导入人物模型后。我们开始进行一三人称场景漫游的实现。首先在人物模型里设置两个camera,分别控制第一人称与第三人称的视角。前者放置于人物眼部位置,而后者放置于人物身后。
图五两台Camera的位置
之后导入Unity中自带的Standard Assets 包,在其中寻找第一第三人称控制组件,并将相关组件加入到人物模型中,其中包括刚体,碰撞器,第一第三人称控制器等,而对于两台Camera根据功能不同分别导入不同的组件。
对于第一人称的实现,需要在人物模型中导入第三人称控制器,刚体和碰撞器,第一人称控制器,并且在Camera中设置Head Bob组件,进行相关设置后实现在第一人称的控制下人物仍然可以进行奔跑,跳跃等动画而不是在第一人称控制的情况下毫无动作。