收藏 分享(赏)

Unity VR 虚拟楼盘展示制作.doc

上传人:tangtianxu1 文档编号:3232889 上传时间:2018-10-08 格式:DOC 页数:21 大小:5.75MB
下载 相关 举报
Unity VR 虚拟楼盘展示制作.doc_第1页
第1页 / 共21页
Unity VR 虚拟楼盘展示制作.doc_第2页
第2页 / 共21页
Unity VR 虚拟楼盘展示制作.doc_第3页
第3页 / 共21页
Unity VR 虚拟楼盘展示制作.doc_第4页
第4页 / 共21页
Unity VR 虚拟楼盘展示制作.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

1、LUOYANG NORMAL UNIVERSITY2015 届 本 科 毕 业 论 文基于 Unity 实现虚拟楼盘展示制作院 (系 )名 称专 业 名 称学 生 姓 名学 号 110424010指 导 教 师完 成 时 间 2015 5洛阳师范学院本科毕业论文1基于 Unity 实现虚拟楼盘展示制作马天宇数学科学学院 信息与计算科学 学号:110424010指导教师:刘青青摘要: Unity引擎推出后在全世界得到了大量的运用。本文通过运用 Unity制作出来的是房地产虚拟展示的一个软件,通过虚拟现实技术制作全方位三维展示以及逼真的动画和过场。关键词:MentalRay烘培;材质;三维坐标;虚

2、拟漫游;视频播放;手指触控引言虚拟现实(Virtual Reality,简称 VR)是最近几年来新出现的高新技术,也称灵境技术或者人工环境,虚拟现实技术集成了计算机图形(CG)技术、计算机仿真技术、人工智能、传感技术、显示技术、网络并行处理等技术的最新发展成果的集合,是一种由计算机技术辅助生成的高技术模拟系统,虚拟现实技术的发展与应用离不开计算机技术的发展,两者是相辅相成的关系,如果要正确认识和剖析并把握虚拟现实技术的应用与发展,就必须深入研究计算机技术的变化与发展趋势,这样才能有利于我们未来更好的掌握与应用虚拟现实技术。 1实时互动的应用程序可以让你漫步在还没有盖好的房子里,或是回到几世纪以

3、前的废墟让你在里面可以行走,尽管现在的计算机辅助绘图技术(CAD)能建立3D的模型,但仍不太容易真正的传达客户希望看到的视觉仿真效果。“大多数的房地产公司仍然无法给予客户一个身历其境的体验的感觉,而交互式的3D 可以让我们创造出一个完整的模拟环境,现在已经可以做到让客户在房子还没盖好之前就可以在未来的家里走来走去,甚至可以体验到当早晨的阳光从窗户透进来的感觉。“本篇论文与大家一起分享 Unity 在非游戏领域的应用实例,在房地产家居行业中,通过 Unity 开发的应用将传统设计师的工作化繁为简并交予住户 ,让住户自己设计呈现喜好的家居环境在虚拟现实中来感受及评估。制作地产楼盘洛阳师范学院本科毕

4、业论文2漫游,能够让顾客更好的了解整个楼盘的规划,效果,取代了以往图片平面化信息的不够直观的表达效果,信息传达不够直观全面的弊端。在楼盘尚未建成,也能让顾客身临其境的感受到整个楼盘的居住环境,建筑外观,配套设施,能够推动地产楼盘前期推广的效率,促进整体销售的提升,更能提升整体地产公司整体的品牌及企业形象。 1 研究主要内容1.1 研究方法及手段以 Unity3D 为开发平台开发的一个虚拟仿真楼盘展示系统,是一个逻辑完整的、程序运行流畅的三维软件通过对相关资料的大量查询以及对手指触控的一些研究,对 Unity3D 游戏引擎有了相关的了解对 Unity3D 中需要使用的编辑语言 C#进行学习,查阅

5、 C#相关资料,使自己的编程水平可以满足这个展示的基本需要虚拟展示的制作过程以及软件实现后的整体过程大致分为以下几个步骤: 1) 了解 3Dmax 建模软件以及 Mental Ray 渲染器,掌握相关的基本操控,熟悉 3Dmax 的四角面建模以及 Mental Ray 烘培方法。 2) 熟悉 Unity3D 引擎,掌握 unity 基本的编辑器操作,熟悉 Unity3D 每个功能模块的作用和操作方法熟练使用 unityAPI 的方法。3)设计软件的 UI 主界面,对软件的整体功能进行架构,明确虚拟展示软件的主要功能以及软件的风格。4) 设计软件的内容,策划软件的主题,并设定软件的相关场景。5)

6、 根据别人的需求和自己的理解,在 Unity3D 中制作下相关部分,包括交互逻辑,加载逻辑,UI 逻辑,漫游逻辑等,用到了 Easy Touch 插件和 NGUI 插件。6) 初步测试,对系统的各项功能进行测试,及时发现问题,进行逐项解决。7) 在 PC 上进行发布,并进行测试,完成在 PC 端触控上的正常操作。8) 在 IOS 上进行发布,并进行测试,解决 Ipad 平板上的正常操作。1.2 开发的环境PS洛阳师范学院本科毕业论文3Photoshop经常用做于图像处理,而不是图形创作。图像处理是对已有的位图图像进行编辑加工处理以及运用一些特殊效果,主要用做于在于对图像的处理加工;图形创作软件

7、是按照自己的构思创意,使用矢量图形等来设计图形。3DMax3D Studio Max,(原名:3D Studio Max),常简称为 3ds Max 或 MAX,是Autodesk 传媒娱乐部开发的基于 PC 系统的全功能的三维计算机图形软件。 MayaAutodesk Maya 是美国 Autodesk 公司出品的世界顶级的三维动画软件,运用领域是专业的影视广告,角色动画,电影特技等。Maya 引擎的功能完善,工作灵活多变,易学易懂易用,制作效率很高,渲染真实感极强,是电影级别的高端制作动画软件,Mental Ray 渲染器Mental ray 是一个专业的 3D 渲染引擎,它可以生成十分逼

8、真的高质量真实感很强的图象。现在你可以在 3D Studio 的高性能网络渲染中直接控制 Mental ray 。它在电影领域得到了大量的应用和认可,被认为是市场上最高级的三维渲染解决方案之一。Unity3DUnity3D 是由 UnityTechnologies 开发的一个玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画的类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。C#C#是 C+衍生出来的面向对象的编程语言,是微软公司发布的一种面向对象的于 NETFramework 之上的高级程序设计语言,并定于在微软职业开发者论坛(PDC)上登台亮相,C#是微软公司研究

9、员 AndersHejlsberg 的最新成果,C#看起来与 Java 有着惊人的相似,它包括了诸如单一继承,界面,与 Java 几乎同样的语法,和编译成中间代码再运行的过程,C#是微软公司 NETwindows 网络框架的主角。AEAdobe After Effects 简称“AE”是 Adobe 公司推出的一款图形视频制作和处理软洛阳师范学院本科毕业论文4件,适用于从事视频设计和视频特效的机构,包括电视台、动画制作公司、个人后期制作工作室以及多媒体工作室。属于层类型后期制作类软件。XcodeXcode 是苹果公司开发的特有的编程软件,是开发人员建立 OS X 和 iOS 应用程序的最快捷的

10、方式。Xcode 具有统一的用户界面设计,编码、测试、调试都在一个简单的窗口内完成。2 Unity3D 简介2.1 Unity3D 总体概述Unity3D 是一个用于创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的综合型创作工具,由 Unity Technologies 开发,是一个全面整合的专业游戏引擎,Unity 类似于 Director,Blender ,Virtools 或 Torque Game Builder 等利用交互的图型化开发环境为首要方式的软件其编辑器运行在 Windows 和 Mac OS X 下,可发布游戏至 Windows、Mac、Wii、iPhone、

11、Windows phone 8 和Android 平台,也可以利用 Unity web player 插件发布网页游戏,支持 Mac 和Windows 的网页浏览,它的网页播放器也被 Mac widgets 所支持,Unity 分成 Free 与Pro 版。 22.2 Unity3D 软件特色综合编辑:通过 Unity 简单的用户界面,易上手进行界面编辑和编程工作。导入资源:支持所有主要的文件格式,并能和大部分的相关应用程序协同工作。一键部署:让玩家的作品在多平台呈现。着色器:着色器系统整合了易用性、灵活性和高性能。天空盒:优化软件流畅度的一种很好的办法。资源包:资源和逻辑从外部加载。音频和视

12、频:实时三维混合音频流、视频流。光影:提供了具有柔和和阴影与烘焙的高度完善的光影渲染系统。文档:为学习者提供逐步的指导、文档和实例方案。2.3 软件总体设计洛阳师范学院本科毕业论文51. 摄像机初始镜头,处于天空鸟瞰的感觉(单手指左右滑动控制旋转,双手指打开合拢控制方缩小)(上图箭头只是做参考,主要操作还是基于触屏,这两个功能用的很多)2.拉近后,单击可把视角转移到黄色单个中心点进行 360 度旋转拉近拉远观察(单手指左右滑动控制旋转,双手指打开合拢控制方缩小)洛阳师范学院本科毕业论文63.1 软件操作说明3.1.1 场景操作说明在开始场景中为楼盘的外围建筑的鸟瞰图。拖动鼠标或者手指拖动屏幕可

13、对楼盘中心进行水平360以及上下0度到60度旋转,下方按钮功能,分别为1)区域分布:为大楼的地理位置的一个视频2)鸟瞰:为大楼的中心进行鸟瞰观察3)街景漫游:设置了4个街景点,点击街景漫游,会响应的出现4个街景漫游的按钮,4个按钮分别为不同的场景漫游地点,4)车库: 点击车库会跳转场景,进入车库的场景5)室内:设置了4个室内场景,两个办公室内,两个家居室内,三个室内为没渲染的建模。一个室内为渲染的简模,点击跳转在室内场景后,有四个按钮一个是毛胚房按钮,一个是 简装,一个是漫游,一个是返回主程序6)主楼:点击出楼会相应的出现6个按钮,分别为1,2,3,4,5,6点击六个按钮,围绕的中心点这会变成

14、相应的主楼,7)退出按钮:点击按钮,退出程序。3.2 软件建模流程介绍洛阳师范学院本科毕业论文73.2.1 建模和模型整理在 3DMAX 建模中标准单位设置为毫米,导入 CAD 原图归到一个图层到坐标原点,根据 CAD 墙线制作墙体,根据设计方案硬装模型,根据设计方案软装模型,建好模型后把所有的单体的 Gimao(中心点)整理到单体的中心,按程序不同的用处归到不同的层中,这样即使美术修改,跟程序也没什么大关系,顶视图在用线沿墙内勾出一个闭合的空间,原则是避开家具不能穿插墙体,描绘出线转角要给一个圆角命令,用在程序中漫游时不越过这个闭合的空间,尽量把该合并的材质都合并,这样的话会节省内存开销,是

15、软件流畅度得以提升。漫游路径模型例图和程序不渲染路径图:3.2.2 贴图方法及贴图的制作材质和贴图不能出现中文名称,纯色的物体贴图需弄 32*32 像素的纯色贴图,贴图的尺寸要按照 2 的 N 次方像素设置,这些设置也是为了软件运行时减少内存的开销,提高流畅度。例图:3.2.3 材质赋予,模型减面及合并指定 Mental Ray 渲染器,标准材质(Standard)换成 Mental Ray 嵌套的材质,设置主要的几种材质参数,例如墙体,透明玻璃,灯罩,黄铜金属类,相同洛阳师范学院本科毕业论文8材质物体必须是同一材质球,材质球命名不能是中文来写。模型减面要适当,不能破坏模型原有的造型。不规则的

16、模型要用 ProOptimizer(批处理)命令。看不到的面要删除,但离地面比较高的面不能删除,灯罩窗帘使用双面模型,如果平面物体表面有黑斑时,应该取消那几个面的光滑组,对曲面要统一曲面的光滑组,避免烘培的时候贴图出现黑色接缝。模型减面 后都应该用一下 Reset XForm(重置变换)和 Turn to Poly(转换为多边形); 对模型结构与贴图坐标不起作用的点和面要删除以减少数据量,提高 FPS 帧速率。在保证场景效果的前提下减少场景的总体面数,曲线挤压的时候要注意线的段数,必要时候可以使用折线形式来代替曲线,模型的网格分布要合理,模型中平直部分可以使用较少的分段数,曲线部分为了表现曲线

17、的转折可以适当多分配一些,模型平面边缘轮廓点分布尽量做到均匀,否则容易使模型破面或者产生其他问题。按空间里同材质物体塌陷。不同材质的挂画可以塌陷在一起,后期不需要调节,对整个空间影响不是很大的物体也可以塌陷在一起(具体方法视户型而定)。剪完面后整体效果帧速率要大于 60;最后的模型分别打为两组,一组是静态的程序调用不到的场景模型,一种是程序有调用用到的按钮,动画等等有用的模型例图:3.2.4 展 UV 及灯光测试手动展 UV 的目的是要尽量使 UV 铺满整张贴图以节省内存消耗。模型没减面前展的都不符合规范,必须在减面后展。展完 UV 模型后面加上贴图像素的大小。指定 Mental Ray 渲染

18、器,检查 Gamma 值,选择曝光方式,窗户位置打射面灯模拟天光。灯槽位置用圆柱灯模拟灯带,台灯位置用球灯模拟,光域网模拟室内筒灯,调节灯光强度和颜色,尺寸,阴影方式和阴影细分。同一空间的灯应该关联复制,调节渲染器常用参数。做渲染处理时尽量模块化渲染,一般的计算机硬件对渲染处理都很慢。 33.2.5 烘培以及烘培贴图在 PS 中的处理按层给场景中要烘培的物体添加 CompleteMap 和 LiaghtingMap,贴图格式存为.exr。设置好存储位置,贴图格式,贴图尺寸,烘培贴图.exr 格式的要在洛阳师范学院本科毕业论文9Photoshop 中批处理一下 Gamera 值。3.2.6 Un

19、ity3D 中场景模型的后期处理在模型导入unity后,还需要进一步的材质和灯光的处理。在这里我采用了一些输出的材质插件名称Marmoset着色器,在主场景中用到的着色器主要是有一 自定义的 Simple reflection(简单反射 shader):这个着色器主要是用于大楼的整体玻璃效果,仔细看的话,会看到玻璃反射过来的天空云朵和光线,简单反射着色器的简单原理为:在一个镜像摄像机内投影的矩阵中,在我们的操作软件时首先会将镜子这个对象的顶点转换为世界坐标,然后在使用镜像摄像机空间内的投影矩阵,最终顶点在屏幕上的投影会被用来作为UV 贴图坐标来采样镜像相机渲染出啊来的材质贴图中(RenderT

20、exture)。 4这是普通着色器和简单反射着色器的区别:二 半透明凹凸高光着色器:此着色器主要用于家具玻璃的呈现方式。它的简单原理为:光在半透明物体中沿着各个方向进行反射和折射,所以光的方向性就消失了,但光在物体内部的所能前进的深度和物体的密度,物体到光源的距离密切相关的,所以我们用 shader 提供的两个变量一个是控制物体到光源距离的偏差,一个是用来控制光在无题中的衰减速度,其实也就是对对象密度以及透明度的衰减控制。 4普通着色器和半透明高光漫反射着色器的区别如图:洛阳师范学院本科毕业论文10用到的着色器还有一些顶点着色,视差漫反射着色等等。3.3 软件功能实现脚本介绍3.3.1 全局通

21、用脚本的逻辑在本系统的开发过程中,一些声音的播放,对象的显示与隐藏,对一些通用路基进行了封装使用,在写通用方法开发中,遇到了一些问题。遇到的问题和解决方法是:当鼠标悬浮物体时,写脚本使物体变红,移开恢复原来的颜色,但是,我是一个开发者,不是使用者,我在操作时,就会按照我的流程来,使用者不知道怎么操作就会乱点,最大的问题就是:如果鼠标悬停物体变红,点击拖着不放再移动到不与物体碰撞的地方,再松开鼠标,这时物体依然是红色的,并没有变回原来的颜色,我起初使用的是 NGUI 插件的 OnHover()悬停方法,因为有 Bug,就放弃了这个方法,使用 unity OnMouseOver()方法和OnMou

22、seUp()方法。 当鼠标弹起方法,测试都是没有任何问题的。但是,如果NGUI 插件结合使用的话,如果我们使用 NGUI 来做一些 UI 按钮逻辑的话,就会在摄像机上添加一个 UICamera 的组件,按钮的原理是用的射线原理:即从摄像机发射出来一条射线,如果碰到碰撞盒,则会反馈回来一个消息事件,unity 自带的这两个方法竟然就失效了,后来网上查询资料和自己的理解,发现 NGUI 也封装好了一个叫做 OnPress()按下 button 响应的方法。在这个方法里添加一句使物体颜色 RGBA 值变回原来的颜色,这样的话,就解决了问题,但是依然留下的问题就是NGUI 中封装好的 UICamera

23、 脚本与 unity 系统自带的鼠标事件冲突的问题。洛阳师范学院本科毕业论文11解决问题后的图例:3.3.2 UI 功能逻辑在 UI 功能开发这个模块中,都是要考虑一些,点击那个出现,点击按钮实现什么功能,例如:点击室内按钮,会相应的出现室内的 4 个按钮,点击主楼按钮,会相应的会出现 6 个主楼的按钮,但是,不能同时出现,那么就得对这些做一个判断了,如果室内按钮没出现时,点击主楼,那么出现主楼按钮,如果室内按钮出现后,再次点击主楼按钮,那么室内按钮隐藏,主楼按钮出现,相应的其他一些类似的按钮功能也相同。在 UI 逻辑开发中遇到了一个问题就是和 3D 模型有关。当我点击 6 个楼时会有一些相应

24、的反映,但是大楼的模型是一些组件拼起来的,并不是一个物体,而是很多个物体,但是按钮就一个,所以在这里就做了一个处理:建模的时候建两个模型,一个超简模,一个模型,超简模用作按钮使用,但是不做渲染,例图:3.3.3 手指触控逻辑的深入研究在开发过程中,手指触控逻辑是最主要的一个环节开发,也是本系统开发的一个最难得点。需求是手指触控可围绕中心点进行 360 度旋转和上下旋转。由于是拖拽进行旋转,所以就是用插值来改变相机的位置,在围绕中心旋转中,差值的使用方法用两种,一种是欧拉角,另外一种是四元数,但是使用欧拉角旋转时,洛阳师范学院本科毕业论文12可能会碰到万向锁的 Bug,所以就采用了四元数进行对围

25、绕中心的旋转。手指触控原理:在手指触控中获取手指触点屏幕坐标的点 A(X,Y)这个点是在手指只要触控屏幕就会实时检测更新的,再定义一个点 B(X.Y).加一个判断Bool 初始为真,如果手指触控到屏幕就让 B=A,然后 B=A 不执行,判断 Bool 为假,直到手指脱离屏幕才能为真, 定义一个 Vector3 C=(A.x-B.x,X.y-B.y,0)然后再次让 B=A。这里的大概意思就是:C 就等于手指现在的坐标减去上一刻的坐标,主要目的就是控制旋转的速度。我们再定义两个值 RX 和 RYRX=Mathf.Clamp(RX+ Mathf.Clamp(-x *调节速度, -45, 45), m

26、inY,maxY);RY=Mathf.Clamp(RY+ Mathf.Clamp(-x *调节速度, -45, 45), minX,maxX);Quaternion QA= EulerToQuaternion(RY,RX,0);摄像机的角度= Quaternion.Slerp(摄像机现在的角度,QA,转动速度)摄像机的位置=摄像机角度*new Vector3(0,水平高度,-离中心点距离)离中心点距离=缩放滑动值(触摸缩放*缩放速度);缩放滑动值=Mathf.Lerp(离中心点距离,Mathf.Clamp(这一刻的距离+=缩放值*缩放速度,最小值 ,最大值), 速度))缩放值的判断原理:如果是

27、两点触控并且第一个点和第二个点都移动才能执行以下判断,获取两个点的屏幕坐标 A(X,Y)和 B(X,Y),过一瞬间,获取当前的屏幕坐标 C(X,Y)和 D(X,Y)如果 C-A 的绝对值并且 D-B 的绝对值都大于 0 那么就进行放大返回 float 缩放值。否则就缩小,返回 float 缩小值。手势判断关键性数学代码如下:Enlarge isEnlarge(Vector2 oP1, Vector2 oP2, Vector2 nP1, Vector2 nP2)/函数传入上一次触摸两点的位置与本次触摸两点的位置计算出用户的手势var leng1 = Mathf.Sqrt(oP1.x - oP2.

28、x) * (oP1.x - oP2.x) + 洛阳师范学院本科毕业论文13(oP1.y - oP2.y) * (oP1.y - oP2.y);var leng2 = Mathf.Sqrt(nP1.x - nP2.x) * (nP1.x - nP2.x) + (nP1.y - nP2.y) * (nP1.y - nP2.y);if (Mathf.Abs(leng1 - leng2) 10) return Enlarge.None;outx = leng1;outy = leng2;if (leng1 leng2) return Enlarge.Small;/ 缩小手势else return En

29、large.Large; / 放大手势根据欧拉角到四元数的转换的数学公式写出转换的方法。 5/ 欧拉角到四元数的转换的代码: public Quaternion EulerToQuaternion(float _x, float _y, float _z) float x = Mathf.Cos(_y / 2 * Mathf.Deg2Rad) * Mathf.Sin(_x / 2 * Mathf.Deg2Rad) * Mathf.Cos(_z / 2 * Mathf.Deg2Rad) + Mathf.Sin(_y / 2 * Mathf.Deg2Rad) * Mathf.Cos(_x / 2

30、* Mathf.Deg2Rad) * Mathf.Sin(_z / 2 * Mathf.Deg2Rad);float y = Mathf.Sin(_y / 2 * Mathf.Deg2Rad) * Mathf.Cos(_x / 2 * Mathf.Deg2Rad) * Mathf.Cos(_z / 2 * Mathf.Deg2Rad) - Mathf.Cos(_y / 2 * Mathf.Deg2Rad) * Mathf.Sin(_x / 2 * Mathf.Deg2Rad) * Mathf.Sin(_z / 2 * Mathf.Deg2Rad);float z = Mathf.Cos(_y

31、/ 2 * Mathf.Deg2Rad) * Mathf.Cos(_x / 2 * Mathf.Deg2Rad) * Mathf.Sin(_z / 2 * Mathf.Deg2Rad) - Mathf.Sin(_y / 2 * Mathf.Deg2Rad) * Mathf.Sin(_x / 2 * Mathf.Deg2Rad) * Mathf.Cos(_z / 2 * Mathf.Deg2Rad);float w = Mathf.Cos(_y / 2 * Mathf.Deg2Rad) * Mathf.Cos(_x / 2 洛阳师范学院本科毕业论文14* Mathf.Deg2Rad) * Mat

32、hf.Cos(_z / 2 * Mathf.Deg2Rad) + Mathf.Sin(_y / 2 * Mathf.Deg2Rad) * Mathf.Sin(_x / 2 * Mathf.Deg2Rad) * Mathf.Sin(_z / 2 * Mathf.Deg2Rad);return new Quaternion(x, y, z, w);3.3.4 播放视频的不同方法在视频播放问题上。我遇到了一些难题,由于在 IOS 和 Android 移动端不支持 unity 自带的 Movtexture 播放模式,所以经过网上查询后,解决了这一办法,先写一个宏定义,如果是电脑端,那么就执行电脑端播放

33、视频的方法,如果是移动端,就执行移动端播放视频的方法。电脑端比较简单,这里主要做移动设备中播放视频的方法。,利用 IOS 和安卓的播放视频的控件来对视频进行播放。这里用到的是 Handheld.PlayFullScreenMovie 播放方法具体的 4 种方法代码如下:/视频播放时触摸屏幕视频关闭Handheld.PlayFullScreenMovie(“视频名称.格式”,背景颜色,FullScreenMovieControlMode.CancelOnInput);/视频播放时弹出 IOS 高级控件,可以控制视频暂停播放全屏等等Handheld.PlayFullScreenMovie(“视频名

34、称.格式”,背景颜色,FullScreenMovieControlMode.Full);/视频播放时无法停止,当播放万一此后自动关闭Handheld.PlayFullScreenMovie(“视频名称.格式”,背景颜色,FullScreenMovieControlMode.Hidden);/视频播放时弹出 IOS 高级控件,可以控制视频播放进度;Handheld.PlayFullScreenMovie(“视频名称.格式”,背景颜色,FullScreenMovieControlMode.Minimal);关键注意点:一定要将播放的视频文件放在 unity 的 Assets/SteeamingAs

35、sets/路径下,否则是无法播放的,而且这些在电脑端测试是没有任何效果的,只有在移动端测试才行。 63.3.5 发布打包PC端以及PC触控端测试测试性能并修改参数洛阳师范学院本科毕业论文15打包电脑端程序后,普通的电脑并不是点触屏电脑,写了一些鼠标控制旋转缩放的一些代码来测试,但是,放在触控屏上测试,滑动的速度和缩放的速度太慢,估算了几次,调大了10倍才差不多。3.3.6 Xcode发布IOS打包Ipad测试性能并修改参数工程导进mac电脑里后,首先就是调整发布平台,点击Swtich platfrom按钮。此过程慢,然后点击Bulid。例图:在发布ios的ipa文件时,经过网上查询资料,发布成

36、功。主要的流程如下:一, unity发布成成功后,打开发布文件夹,打开unity-iPhone.xcodeproject文件,这时候会默认Xcode打开,洛阳师范学院本科毕业论文16二, 如果IOS移动设备越狱了,连接移动端,点击运行,可以直接发布到移动端里,如果没有,那么需要用99美元苹果官网购买一个开发者账户然后在Team栏输入你的帐号密码,然后点击运行,这样你的移动设备上就直接有运行的软件了,但是要的是一个.ipa文件(类似于安卓的.apk)。三, 点击Xcode编辑器上的Product按钮点击Archive。此过程需要几分钟,成功后会自动弹出一个Organizer-Archives的窗

37、口。四, 点击发布的文件点击右键,点击Show in Finder,会弹出一个有一个文件的窗口。点击文件右键,单击显示包内容,会弹出一个有三个文件夹的窗口。点击Products/Applications文件路径。里面发现了一个.app的文件,洛阳师范学院本科毕业论文17主要流程图如下:五, 打开 iTunes。把.app 文件拖到 iTunes 里,然后把 iTunes 文件里生成的文件拖拽到桌面上就是想要的.ipa 文件。 7洛阳师范学院本科毕业论文183.4 软件BUG检查在软件运行测试中,出现了以下BUG:1) 在外部漫游时有时会穿墙。1) 配置不好的机器很卡。3) 不好看。4) 漫游时

38、碰到物体。松开按钮,会产生力的反作用。5) 电脑端的很多效果移动端显示不出来,特别是阴影效果。解决办法:1)把漫游移动速度调慢,就不会有穿墙的效果。2)优化模型,未解决。3)自己不是专业美工,没解决。4)取消重力。5)做 Mental Ray 渲染,把阴影什么渲染到贴图上解决一部分问题。4 总结本软件是利用了 Unity3D 引擎的多平台发布的便利。向各个平台展现出了一个可视化的虚拟楼盘。虚拟现实的最大优点就是充分调动客户的参与感,客户不仅是被动的观看,而是积极的互动,在售楼中心现场,结合实物沙盘,通过投影仪或等粒子显示器等大屏幕设备,通过电脑的操作和互动,吸引和聚集现场人气,客户通过沙盘、虚

39、拟现实的展示、售楼小姐的讲解全面了解和掌握。 8致谢回顾这半年来的毕业设计的研发,从一开始的功能不明确,到后来的模式确立,深感收获到跟多知识,虽然这是一个程序设计,最核心的开发难点还是一些3D 数学的算法。这还要多谢大一的高等代数魏宗礼老师教导我学习矩阵的一些洛阳师范学院本科毕业论文19知识,多谢黄邵龙老师教导我学习的计算机图形学和设计模式的知识,另外特别感谢刘青青老师对 UI 图片设计的指导和对论文格式方面的指导,在此谨向各位老师致以诚挚的谢意和崇高的敬意。参考文献1 虚拟现实技术与计算机技术应用的共同发展.http:/ 吴亚峰,于复兴.Unity3D 游戏开发技术详解与典型案例M.北京:人

40、民邮电 出版社,2012.3 虚拟现实精装流程.http:/ 郭浩瑜.Unity3D ShaderLab 开发实战详解 M.北京:人民邮电出版社,2014.5 wqj1212s blog.四元数与欧拉角之间的转换.http:/ bssj001 的专栏.Unity3D 播放视频(包括在 IOS 和 Android 移动设备中播放视频). http:/ mryys 的博客.使用 Unity 3D 开发 iOS 游戏入门教程.http:/ 地宝网.虚拟现实房地产中的应用.http:/ VR MA TianYuCollege of Mathematics Science No:110424010Tut

41、or:LIU Qing-qing洛阳师范学院本科毕业论文20Abstract:After the launch of Unity engine in the world has a lot of use. In this paper, by making use of Unity out of the real estate is a software virtual display, through the production of a full range of virtual reality and 3D display of realistic animation and motions.Keywords: MentalRay baking; material; three-dimensional coordinates; roaming; video playback; finger touch.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 专业基础教材

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报