购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2 Unity3D引擎简介

Unity3D也称Unity,是由Unity3D Technologies开发的一个让玩家轻松创建诸如视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,其编辑器运行在Windows和Mac OS X下,可发布游戏至Windows、Mac、Wii、iPhone、WebGL(需要HTML5)、Windows Phone 8和Android平台。也可以利用Unity Web Player插件发布网页游戏,支持Mac和Windows的网页浏览,是一个全面整合的专业游戏引擎。业界现有的商用游戏引擎和免费游戏引擎数不胜数,其中最具代表性的商用游戏引擎有Unreal、CryENGINE、Havok Physic Engine、Game Bryo、Source Engine等,但是这些游戏引擎价格昂贵,使得游戏开发成本大大增加。与此同时,Unity3D公司提出了“大众游戏开发”(Democratizing Development)的口号,使开发人员不再顾虑价格,提供了任何人都可以轻松开发的优秀游戏引擎。

Unity3D的中文意思为“团结”。Unity3D的核心含义是想告诉人们,游戏开发需要在团队合作基础上相互配合完成。时至今日,游戏市场上出现众多种类的游戏,它们分别由不同游戏引擎开发,Unity3D这款游戏引擎以其强大的跨平台特性与绚丽的3D渲染效果而闻名出众,现在很多的商业游戏及虚拟现实产品都在采用Unity3D引擎来开发。

2.2.1 Unity3D特色

Unity3D游戏开发引擎之所以能够炙手可热,与其完善的技术以及丰富的个性化功能密不可分。Unity3D游戏开发引擎在使用上易于上手,降低了对游戏开发人员的要求。下面将对Unity3D游戏开发引擎的特色进行阐述。

1. 跨平台

游戏开发者可以通过不同的平台进行开发。游戏制作完成后,游戏无须任何修改即可直接一键发布到常用的主流平台上。Unity3D可发布的平台包括Windows、Linux、Mac OS X、iOS、Android、Xbox360、PS3及Web等。跨平台开发可以为游戏开发者节省大量时间。在以往的游戏开发中,开发者要考虑平台之间的差异,如屏幕尺寸、操作方式、硬件条件等,这样会直接影响到开发进度,给开发者造成巨大的麻烦,Unity3D几乎为开发者完美地解决了这一难题,将大幅度减少移植过程中一些不必要的麻烦。

2. 综合编辑

Unity3D的用户界面具备视觉化编辑,详细的属性编辑器和动态游戏预览特性。Unity3D创新的可视化模式让游戏开发者轻松构建互动体验,当游戏运行时可以实时修改参数值,方便开发,为游戏开发节省大量时间。

3. 资源导入

项目中资源会被自动导入,并根据资源的改动自动更新,Unity3D几乎支持主流的三维格式,如3d Max、Maya、Blender等,贴图材质自动转换为U3D格式,并能和大部分相关应用程序协调工作。

4. 一键部署

只需一键即可完成作品的多平台开发和部署,让开发者的作品在多平台呈现。

5. 脚本语言

Unity3D集成了MonoDeveloper编译平台,它最初支持C#、JavaScript和Boo三种脚本语言,但是选择Boo作为开发语言的使用者非常少,而Unity公司还需要投入大量的资源支持它,这显然非常浪费。所以在Unity 5.0以后,Unity公司放弃了对Boo的技术支持。同时Unity3D把支持的重心转移到C#,也就是说文档和示例以及社区支持的重心都在C#。就目前的形式来看,C#的文档是最完善的,C#的代码实例会是最详细的,社区内用C#讨论的人数会是最多的。

6. 联网

支持从单机应用到大型多人联网游戏开发。

7. 着色器

着色器系统整合了易用性、灵活性和高性能。

8. 地形编辑器

Unity3D内置强大的地形编辑系统,该系统可使游戏开发者实现游戏中任何复杂的地形,支持地形创建和树木与植被贴片,支持自动的地形LOD,水面特效,尤其是低端硬件也可流畅运行广阔茂盛的植被景观,方便地创建出游戏场景中所需要使用到的各种地形。

9. 物理特效

物理引擎是一个计算机程序模拟牛顿力学模型,使用质量、速度、摩擦力和空气阻力等变量。Unity3D内置nVIDIA的PhysX物理引擎,游戏开发者可以用高效、逼真、生动的方式复原和模拟真实世界中的物理效果,例如,碰撞检测、弹簧效果、布料效果、重力效果等。

10. 光影

Unity3D提供了具有柔和阴影与烘焙效果高度完善的光影渲染系统。

2.2.2 Unity3D发展

2004年,Unity3D诞生于丹麦的阿姆斯特丹。

2005年,发布了Unity3D 1.0版本,此版本只能应用于Mac平台,主要针对Web项目和VR的开发。

2008年,推出Windows版本,并开始支持iOS和Wii,从众多的游戏引擎中脱颖而出。

2009年,荣登2009年游戏引擎的前五,此时Unity3D的注册人数已经达到3.5万。

2010年,Unity3D开始支持Android,继续扩散影响力。

2011年,开始支持PS3和Xbox360,此时全平台的构建完成。

2012年,Unity3D Technologies公司正式推出Unity3D 4.0版本,新加入对DriectX 11的支持和Mecanim动画工具,以及为用户提供Linux及Adobe Flash Player的部署预览功能。

2013年,Unity3D引擎覆盖了越来越多的国家,全球用户已经超过150万,Unity3D 4.0引擎已经能够支持包括Max OS X、安卓、iOS、Windows等在内的10个平台发布。同时,Unity3D公司的CEO David Helgason发布消息称,游戏引擎Unity3D今后将不再支持Flash平台,且不再销售针对Flash开发者的软件授权。

2014年,发布Unity3D 4.6版本,更新了屏幕自动旋转等功能。

2016年,发布Unity3D 5.4版本,专注于新的视觉功能,为开发人员提供的最新的理想实验和原型功能模式,极大地提高了其在VR画面展现上的性能。

2017年,Unity推出了全新的2017版本,在保证易用性和易拓展性的同时,Unity也朝着更加专业化的方向发展。

2018年,Unity推出2018版本,在2018版本中高清晰度渲染管道拥有对着色器可视化编程工具Shader Graph的支持,这是Unity新推出的工具,它允许开发人员用图形方式而不是通过编码构建着色器。高清晰度渲染管道还在体积光效、光滑的平面反射、网格贴图、模型贴花、阴影罩和其他属性方面得到了改进。

2019年,Unity推出2019版本,在Unity 2019中集成了ARKit 2.0和ARCore 1.5。

2.2.3 Unity3D应用

Unity3D是目前主流的游戏开发引擎,有数据显示,全球最赚钱的1000款手机游戏中,有30%都是使用Unity3D的工具开发出来的。尤其在VR设备中,Unity3D游戏开发引擎更加具有统治地位。Unity3D能够创建实时、可视化的2D和3D动画、游戏,被誉为3D手游的传奇,孕育了成千上万款高质、超酷炫的神作,如《炉石传说》《神庙逃亡2》《我叫MT2》等。Unity3D行业前景广泛,在游戏开发、虚拟仿真、教育、建筑、电影、动漫等多行业都在广泛运用3D技术。

1. 在游戏中应用

3D游戏是Unity3D游戏引擎重要的应用方向之一,从最初的文字游戏到二维游戏、三维游戏,再到网络三维游戏,游戏在其保持实时性和交互性的同时,其逼真度和沉浸感在不断地提高和加强。图2.1为Unity3D官方发布的3D游戏demo,名叫AngryBots。随着三维技术的快速发展和软硬件技术的不断进步,在不远的将来,3D虚拟现实游戏必将成为主流游戏市场的应用方向。

2. 在虚拟仿真教育中应用

Unity3D应用与虚拟仿真教育是教育技术发展的一个飞跃,如图2.2所示。它营造了虚拟仿真的学习环境,由传统的读书看图的学习方式代之为学习者通过自身与信息环境的相互作用得到知识、技能的新型学习方式。

图2.1 Unity3D在游戏中的应用

图2.2 Unity3D在虚拟仿真教育中的应用

3. 在军事航天中应用

模拟训练一直是军事与航天中的一个重要课题,这为Unity3D提供了广阔的应用前景。美国国防部高级研究计划局(DARPA)自20世纪80年代起一直致力于研究称为SIMNET的虚拟战场系统,以提供坦克协同训练,该系统可连接二百多台模拟器。另外,利用VR技术,可模拟零重力环境,以代替现在非标准的水下训练宇航员的方法,如图2.3所示。

图2.3 Unity3D在军事领域中的应用

4. 在室内设计中应用

Unity3D引擎可以实现虚拟室内设计效果,它不仅是一个演示媒体,而且是一个设计工具。它以视觉形式反映了设计者的思想,比如装修房屋之前,首先要做的事是对房屋的结构、外形做细致的构思,为了使之定量化,还需设计许多图纸,当然这些图纸只有内行人能读懂,虚拟室内设计可以把这种构思变成看得见的虚拟物体和环境,使以往只能借助传统的设计模式提升到数字化的即看即所得的完美境界,大大提高了设计和规划的质量与效率。

虚拟室内设计方案应用Unity3D引擎进行开发,设计者可以完全按照自己的构思去构建装饰“虚拟”的房间,并可以任意变换自己在房间中的位置,去观察设计的效果,直到满意为止,既节约了时间,又节省了制作模型的费用,如图2.4所示。

图2.4 Unity3D在室内设计中的应用

5. 在城市规划中应用

城市规划一直是对全新的可视化技术需求最为迫切的领域之一,利用Unity3D引擎可以进行虚拟城市规划开发,并带来切实可观的利益。展现规划方案虚拟现实系统的沉浸感和互动性不但能够给用户带来强烈、逼真的感官冲击,获得身临其境的体验,还可以通过其数据接口在实时的虚拟环境中随时获取项目的数据资料,方便大型复杂工程项目的规划、设计、投标、报批、管理,有利于设计与管理人员对各种规划设计方案进行辅助设计与方案评审,如图2.5所示。

图2.5 Unity3D在城市规划中的应用

6. 在工业仿真中应用

当今世界工业已经发生了巨大的变化,先进科学技术的应用显现出巨大的威力,Unity3D引擎已经被世界上一些大型企业广泛地应用到工业仿真的各个环节,对企业提高开发效率,加强数据采集、分析、处理能力,减少决策失误,降低企业风险起到了重要的作用,如图2.6所示。

图2.6 Unity3D在工业仿真中的应用

7. 在文物古迹中应用

利用Unity3D引擎,结合网络技术,可以将文物的展示、保护提高到一个崭新的阶段。首先表现在将文物实体通过影像数据采集手段,建立起实物三维或模型数据库,保存文物原有的各种形式数据和空间关系等重要资源,实现濒危文物资源的科学、高精度和永久的保存。其次,利用这些技术来提高文物修复的精度和预先判断,选取将要采用的保护手段,同时可以缩短修复工期。通过计算机网络整合统一大范围内的文物资源,并且通过网络在大范围内利用虚拟技术更加全面、生动、逼真地展示文物,从而使文物脱离地域限制,实现资源共享,真正成为全人类可以“拥有”的文化遗产,如图2.7所示。利用Unity3D引擎实现虚拟文物仿真可以推动文博行业更快地进入信息时代,实现文物展示和保护的现代化。

图2.7 Unity3D在文物古迹中的应用 JvXC2XHVdHnsUYAhm+WA8L6nURdwKbKq8RjdGWtpaiTq2oh4c93dc6gMkXxSKlLf

点击中间区域
呼出菜单
上一章
目录
下一章
×