网站大量收购独家精品文档,联系QQ:2885784924

基于Unity3d的虚拟现实通用实现方法研究.docVIP

基于Unity3d的虚拟现实通用实现方法研究.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Unity3d的虚拟现实通用实现方法研究   摘要:虚拟现实技术是近几年发展起来的高新技术,它在社会不同领域得到了广泛的应用,本文提出基于Unity3d引擎的虚拟现实通用实现方法,建立了具有通用性以及可分工同步进行的系统开发工作流程,阐述了流程中各个关键性功能模块的实现方案,并对系统效能总体优化的类型和方法进行了总结,研究成果为虚拟现实技术的应用提供一定的参考价值。   关键词:Unity3d 虚拟现实 交互式漫游   中图分类号:TP391.9 文献标识码:A 文章编号:1007-9416(2015)11-0000-00   1 引言   虚拟现实是近年来才发展起来的高新技术,它利用电脑模拟产生一个三维度空间的虚拟世界,提供使用者关于视觉、听觉、触觉等感官的模拟,让使用者如同身临其境一般。[1]虚拟现实与传统的3D漫游动画不同的是,它融合三维建模和游戏开发技术,让使用者通过电脑设备能够与虚拟的3D场景进行实时的交互。   鉴于虚拟现实系统的广泛应用,本文通过三维建模、GUI、漫游模式设计等模块的研究,提出一种通用型的虚拟现实系统开发流程及方法,为虚拟现实技术的应用提供具有一定价值的参考。   2 开发流程设计   虚拟现实主要功能在于让使用者进行主动的漫游选择,本文提出的流程设计基于场景模型-GUI-交互式漫游三者之间的联系,其中,虚拟场景模型是漫游的内容主体,交互式漫游是其核心,而内容主体与交互的连接则需要靠GUI来建立引导。而从系统的开发流程分析,一套完善的开发流程除了能按流程完成最终目标外,还应该提供可重用的设计流程,为开发者在实际开发时提供可执行任务分配及修改空间。   基于以上观点,本文提出如图1的系统开发流程,本流程中,场景模型、界面设计及漫游模式设计为并行开发模式,可分工同步进行。工作流及模块拓扑关系如图1所示。   3 关键功能模块的实现   3.1 场景模型   模型是场景信息的主要载体,这一模块的开发需借助第三方三维设计软件进行。虚拟现实系统的模型对象主要由地形环境、室外建筑、室内建筑、植物等构成,其中地形环境可由Unity系统的山体构建,而建筑物模型的制作需要通过如3DSMAX等三维制作软件进行三维建模,再以fbx格式导入到Unity引擎中。   三维模型的建模通常需要如CAD图纸形式的平面地形数据及建筑建模数据,对无图纸的建筑物则需通过多角度的正面图像进行建模对位,这就要求要获取建筑物外观时,应获取尽可能多的建筑立面并采集相应的纹理图供模型贴图使用。   3.2 GUI   GUI(图形用户界面)设计是指采用图形方式显示的用户界面。GUI主要以垂直于摄像机视线的平面方式呈现出图形、数据及交互按钮等,GUI的开发通常需要先设计出平面图再进入引擎制作,其作用是能够为界面开发提供指导思想和图像素材。   Unity提供了一套较完善的GUI界面引擎,但没有可视化的编辑窗口,需要在程序脚本中调用OnGUI来实现,且很难满足自适应界面布局的需求,极大的降低了开发效率和修改效率。   基于此,本文提出以NGUI插件作为GUI开发的主要工具。NGUI提供了可视化的界面编辑方式和事件框架,它的界面大小是以软件运行时的界面像素分辨率为基点生成一个UIRoot,UIRoot可以设置界面宽度变化的区间,在UIRoot层级下可以创建出如Spirit、Label、Texture等界面元素,再通过对界面元素添加NGUI中的脚本实现界面的效果与交互功能。如按钮的生成是用图集生成Spirit,再通过为Spirit添加UIButton等事件脚本从而将其封装成一个按钮,其中的Anchors属性可用来来指定与摄像机或其他界面元素间的父子随从关系,从而实现按钮界面中的自适应。   3.3 交互式漫游   虚拟漫游的选择通常包括四种漫游模式:自动漫游、第一人称视角行走、第三人称视角行走以及自由漫游模式。   自动漫游是通过对自定义的像机进行编程,记录它在场景中随着时间增量位置和旋转的变化信息,即在引擎中实现实时动画效果。开发此功能有两种方法,一种是基于iTween插件的实现方法,其基本开发思路是通过创建Unity3D自带的简易模型构建出一条动画路径,再将这条路径与摄像机进行连接,通过脚本使摄像机随着时间增加在此路径上进行位置和旋转信息的变化记录,另一种方法是运用Unity3D 4.0以上的版本中新增的Animation模块完成,其实现方法是直接在摄像机上创建Animation组件,通过Animation视图直接录制动画,将动画文件单独保存调用。   第一人称视角行走和第三人称视角行走模式可通过直接调用Unity3D自带的Character Controllers角色控制器组件来实现,该组件封装了前

文档评论(0)

小马过河 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档