现代游戏开发引擎解析

来源 :企业技术开发·下旬刊 | 被引量 : 0次 | 上传用户:dzxxdzc2
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:随着游戏产业的不断壮大,游戏开发引擎及工具开始变得免费和易用。文章介绍并分析了当下在中国应用最为广泛的几款商用游戏开发引擎和工具,对各个引擎特性进行了阐述,并从多个方面对这几款引擎进行了对比,为开发者选用合适引擎提供了参考。
  关键词:游戏引擎;虚幻;unity;cocos2d;LayaAir;Egret
  中图分类号:TP311.5 文献标识码:A 文章编号:1006-8937(2016)30-0064-03
  1 概 述
  中国的游戏市场在近五年得到了飞速发展,除了一直保持稳定增长的传统电脑游戏市场外,被解禁的电子游戏机,电子竞技,网络游戏和移动游戏市场均出现大幅提升,成为推进我国经济增长的助力之一。
  据相关报告显示,截止2016年上半年,中国游戏市场实际销售收入达到787.5亿元人民币,同比增长30.1%。其中,移动游戏依然保持了高速增长,达到374.8亿元人民币,同比增长79.1%。相应的,2016年前6个月我国游戏用户达到了4.89亿人,同比增长6.7%。
  随着游戏产业的不断扩大,相应的游戏开发公司和从业者数量不断增加,市场竞争也非常激烈,绝大多数游戏的生命周期都被大大压缩,不断推出新的游戏,更短的开发周期,更低的资金投入都是各個游戏公司关注的重点。
  为了达到最大的开发效率,几乎所有公司都会选择游戏引擎进行开发;同时一些个人创业者也可以通过使用游戏引擎,快速的将自己的创意实现为产品。本文将对市场上主流的游戏引擎的特点进行分析,并提出了不同引擎的适用环境。
  2 游戏引擎解析
  游戏引擎是指专业软件厂商推出的游戏开发工具,这类型工具实现了游戏开中最底层的一些技术,并将其打包成为函数库,内置于工具中。
  这些底层的实现往往也是游戏开发中最难的一部分。例如图形图像效果的实现,物理效果的实现,动画的实现以及多硬件平台的发布等。
  游戏开发者获得工具后,能够借助工具提供的图形化开发环境专注于游戏逻辑的实现,对于游戏效果等部分,可以借助调用函数库来实现,大大减少了开发的复杂度;同时在后期发布时,也无需担心硬件平台的不同,游戏引擎往往能实现多平台发布。
  2.1 虚幻引擎(Unreal engine)
  虚幻引擎最初版本发布于1998年,是该领域历史较悠久、知名度最高的商业游戏引擎,由美国公司Epic Games开发。该引擎发布以来,一直为高端游戏厂家所选用,无数3D游戏大作基于该平台,例如早期的《时空之轮》《细胞分裂》,以及后来的《战争机器》、《质量效应》等。
  虚幻引擎的底层采用C++编写完成,其图形特性能够支持最新版本的DirectX。
  虚幻引擎很早就能够支持PC和游戏机的上的开发,该引擎第一代在1998年发布,之后在2002年发布了虚幻二,在2006年发布了第三代产品。虚幻引擎在2013年发布了第4个版本,并且带来了很多变化。
  首先,前三代虚幻引擎是一个纯商业化产品,使用者必须付费购买,并且价格不菲。而虚幻4则采用了一种完全免费使用的产品发行方式,用户只需在官网上注册,就可以下载该引擎进行游戏开发。仅当用户将游戏商业化并创造收入时,虚幻引擎才收取收入的5%作为引擎费用。
  其次,虚幻4能够很好的支持多平台,除了传统的Windows,MACOS以及Xbox和PlayStation外,新引擎还强化了对移动设备的支持,涵盖了IOS和安卓两大移动平台以及HTML5的页面平台。
  第三,虚幻4采用了新的代码编辑语言和编辑方式,早期虚幻用的是unreal script语言,现在采用了更加常用的C++,并且增加了Blueprint可视化编辑环境。
  第四,虚幻4增加了应用商城,能够让普通用户将自己开发的插件在商城中售卖,从而大幅提升该引擎的实际应用能力。
  虚幻引擎由于其早期的高价和高技术含量,针对的开发对象也是PC和游戏机,使得该引擎的用户往往是专业程序员。其优势依然在PC和游戏机领域,在移动平台方面还处在开拓阶段。
  2.2 Unity引擎
  Unity引擎是近几年使用非常广泛的新游戏引擎。其特点首先是免费使用,其次是学习门槛较低,同时具有庞大的用户商城支持。
  可以说,Unity的技术以及运营模式更加适合当前这个快销费和免费使用的时代,很快就占据了大量用户,也倒逼虚幻引擎放弃了以前的收费策略,走上了和Unity一样开放的道路。
  Unity最早发布于2005年,适用于MAC平台,早期其名为Unity 3D,主要是为实现基于Web的3D和虚拟现实(VR)项目而开发。
  直到2008年,Unity支持Windows平台后,其知名度才大幅提高。之后随着Unity相继支持移动平台、PlayStation和Xbox,在2011年就完成了其跨平台的生态的构建,成为了多平台3D游戏和互动设计的高人气引擎。
  Unity的优势在于强大3D效果和虚拟现实,2D方面则从Unity4之后开始加强。迄今为止,Unity是使用者最广泛的游戏引擎,其原因首先是免费使用,只有专业版才收取一定的收费。
  其次是该引擎使用的编程语言也是非常易学习的C#和JavaScript,学习成本较低,上手非常快,并且在国内有很多用户,能够找到丰富的网络资源。
  第三,该引擎提供一个非常强大且易用的集成开发环境,适用于不同开发人员(程序员,设计人员和策划人员)共同工作,其基于组件的游戏快速开发流程也非常令人容易理解;同时该引擎提供资源商城,用户间可以很方便的交易资源和工具,可以说,Unity是当今效率最高的3D游戏开发引擎。
  第四,全平台打包支持,该引擎对几乎所有的移动和游戏机平台都能提供支持,除此之外,对知名的虚拟现实设备也有非常好的支持。   不过该引擎早期版本对界面设计及2D设计的支持比较弱,如果是开发小型HTML5游戏,可以考虑用其它引擎。在Unity5之后,加入了对WebGL的支持,对HTML5方面的支持再上一个台阶,使其成为了开发大型2D/3D网页游戏(无插件)的重要选择之一。
  2.3 Cocos 2d-x引擎
  Cocos 2d-x是由中国公司触控科技开发的,基于Cocos 2d开源引擎的国产游戏引擎,其特性主要集中在2D游戏和移动平台,甚至打出了为移动而生的口号。
  Cocos 2d的原型出现在2005年的阿根廷,创始者当时使用python语言开发该引擎,后来在2008年率先支持苹果的IPhone平台,成为众多开发者的选择。Cocos 2d-x作为Cocos 2d的国产引擎,主要部分由C++开发完成,早期版本的Cocos 2d-x提供Cocos Studio作为开发工具,能够同时支持C++,Lua和JavaScript三种开发语言进行逻辑设计。
  目前,基于Cocos 2d-x引擎开发的游戏非常多,多数2D游戏开发者都会首选该引擎,日本游戏公司基于该引擎开发的《怪物弹珠》成为2014年日本付费游戏第一名。
  Cocos 2d-x最大特性是跨平台部署,能够一次编写,发布到IOS,Android和HTML5页面平台。同时其作为专业2D游戏引擎,图形部分基于OpenGL ES進行渲染,引擎中附带一些3D的效果。
  经过几年发展,Cocos 2d-x在2016年推出了全新Cocos Creator集成开发工具,该工具是以内容创作为核心的游戏开发工具,实现了一体化、可扩展、可自定义工作流的编辑器,并形成了组件化编程方式,极大简化了游戏开发工作流中的场景编辑、UI设计、资源管理、游戏调试和预览、多平台发布等工作。不过该开发工具放弃了C++和Lua语言,仅仅支持JavaScript作为开发语言。
  2.4 LayaAir引擎
  由中国公司Layabox打造的基于HTML5协议的跨平台游戏开发的开源免费引擎。该引擎除了能开发HTML5的游戏以及一些富媒体应用外,还能够将最终的应用发布成为APP和Flash页面。
  该引擎图形部分从一开始便基于WebGL渲染,能够直接调用硬件GPU进行加速,故在游戏性能上有一定优势。该引擎提供集成化开发工具LayaAir IDE,支持ActionScript3、Typescript、JavaScript三种开发语言,其中AS3主要应用在Flash应用的发布上。
  LayaAir引擎支持开发2D、3D及VR的网页产品(HTML5),同时能够发布IOS、Android和Flash(处于淘汰中)应用,最为主要的是,该引擎在H5游戏的性能方面优化较好,大型H5游戏能够在不需要runtime的情况下达到较高流畅度(该引擎同时提供LayaPlayer作为运行器,该运行器也被多个主流浏览器预装)。
  该引擎现在归属与触控科技。
  2.5 Egret引擎
  Egret引擎是在2014年由国内公司设计的基于HTML5的开源、免费游戏引擎,可以说该引擎与LayaAir引擎比较相似,都和早期的Flash有一定的渊源,脱胎于HTML5。
  该引擎提供名为Egret Wing的可视化开发环境,只能使用Typescript作为开发语言,基于组件的编程设计,能够极为快速的开发小型HTML5游戏,同时能够打包作品到移动平台APP及HTML5页面。
  该引擎图形部分早期基于HTML5的Canvas模式,兼容性较好,但性能较差,基本无法开发大型的H5游戏。
  2016年,该引擎在3.0.8版加入了基于WebGL渲染支持,图形方面有较大改善,能够胜任大型H5游戏的开发,同时在3D效果方面支持较好,提供功能包含模型,骨骼动画,光照系统,粒子系统等。Egret作为国内3大游戏引擎之一,可以说在各个方面都表现的很均衡,随着几乎所有主流浏览器支持WebGL后,该引擎与LayaAir形成了HTML5引擎的国内第一梯队。
  3 主流游戏引擎间的比较
  现在的游戏引擎格局和早些年有很大不同,最主要的变化是普通开发者也能够免费的使用、学习和开发自己的游戏,而游戏引擎公司也都开始了平台化运营,即通过引擎网罗优质游戏内容(CP)公司,并通过在引擎内提供平台接入(广告、渠道、支付、社区)、联合运营等方式,帮助游戏公司快速发行游戏获得收入。当然,依然有些公司选择自己开发游戏引擎,这些不属本文讨论范围。虽然游戏引擎的运营方式大同小异,但引擎本身的差异还是很多的,本文列举了上一章中各个引擎的不同地方,见表1。
  4 结 语
  对于现在比较流行的中小型HTML5游戏而言,Cocos2d-x、LayaAir和Egret引擎相对来说比较合适。而对于开发大型3D游戏,虚幻引擎则更加适合,但对开发者的要求也比较高。
  Unity相对来说比较均衡,也很容易学习,但是其不开源的问题可能会让一些开发者选择其它引擎。总体而言,免费和易用的浪潮已经行程,对于广大开发者和爱好者而言,都是好事一件。
  参考文献:
  [1] 李红波,吴雨芯,赵宽,等. Android平台下3D游戏引擎技术的研究及应 用综述[J].数字通信,2012, 39(5):28-33.
  [2] 高兴,郑智,全宇.三维游戏引擎的研究与设计[J].计算机系统应用,
  2013(8):29-33.
  [3] Carlson R E. Universal game engine for a game network and
  method therefor: US, US6428413[P].2002.
  [4] 张健.次时代游戏引擎设计与实现[D].北京:北京交通大学,2014.
  [5] Goussencourt T D, Bertolino P. Using the Unity game engine as a
  platform for advanced real time cinema image processing[J]. 2015.
其他文献
摘 要:随着物联网技术的普及和应用,AT89S52单片机已经成为温室大棚技术控制系统中的核心。AT89S52单片机主要的结构是以主从或者双单片机为主,负责数据采集、转化以及防御系统的工作,进而获取温室大棚的温度、湿度、土壤成分、CO2的浓度以及光照等方面的数据。而单片机的显示输出数据,通过控制灌溉系统、照明系统、温度控制系统等调节温室大棚的温度、湿度以及光照等。  关键词:物联网技术;温室大棚;系
期刊
摘 要:随着工业的发展,自动化设备不断的改进,使得工业发展的步伐增快,自动化设备无论是在汽车装配还是零件检测上都起着很大的作用。将自动化设备用于汽车的制造中,有效的优化了生产加工的过程,提高了工作效率,同时还在间接的让企业获得了更好的经济利益。所以面对现今竞争激烈的市场局势,自动化设备很大程度上对于改善工业的发展做出了杰出的贡献。文章对于自动化技术和自动化设备在汽车制造上的应用进行研究,并对前景和
期刊
摘 要:在社会经济的不断发展当中,人们的实际用电需求的量逐渐增多,为了满足人们的用电需求,需要对传统电网进行改造和扩建,以此来保证电能的整体质量,提高电网运行的稳定性,在电网规模不断增加的今天,电力调度监控工作在较大范围上比较依赖智能化的监控方法,这样能够及时的对电网运行中所出现的异常现象进行控制,文章对电网监控中所出现的主要异常现象和处理技术进行分析,并对电网调度一体化系统的建设进行研究。  关
期刊
摘 要:为了实现PVC涂胶机器人的精准涂胶,文章以大众轿车厂涂装车间PVC涂胶机器人站为例,进行基于视觉反馈的机器人伺服控制系统研究。由安装在工作间内的4台摄像头捕获图像。对处理后的图像进行目标识别,提取图像特征,采用模板匹配的方法识别出特征点。然后根据已标定的摄像头和机器人,计算出车壳与机器人的位置关系和车壳与车壳之间的位置偏差发送给机器人,机器人根据偏差值自动调整涂胶轨迹,实现了视觉定位系统与
期刊
摘 要:现阶段,随着对智能化控制要求的不断提高,我国为加强配电室区域的管理水平和质量的宏观管控,针对配电室智能化集控装置进行了深入研究,利用智能化集控装置对配电室进行全方位的监控和管理,通过利用图像进行直观分析,发现危险情况后能够自动报警,从而减少了监控人员的工作量,缩减人员比例,带来了更多的经济效益和社会效益。智能化集控装置可以为工作人员提供準确的数据分析结果,让工作人员做出正确、合理的决策,与
期刊
摘 要:文章主要研究了配电网自动化技术应用过程中的注意事项。文章首先从配电网自动化的作用出发,全面阐述了新时期配电网自动化建设的必要性;其次,对配电网自动化技术的主要内容进行研究,深入分析了配电网自动化系统结构;最后,在该基础上结合韶关市配电网自动化建设状况,对其应用过程中的注意事项进行挖掘,望为配电网建设提供一定的参考。  关键词:配电网;自动化技术;内容;应用  中图分类号:TM726 文献标
期刊
摘 要:电力企业的财务管理发挥着企业经营发展的旗舰作用,财务管理体系的有效运行是经营管理的关键环节。构建一套行之有效的财务管理体系,对电力企业战略落实、价值提升,整体管理水平的提高,都具有十分重要的现实意义。文章在对电力企业财务管理现状进行分析基础上,运用财务管理理论和方法,结合财务管理的一般程序,提出了重构财务管理体系的设计思路与原则。  关键词:电力企业;财务管理;创新;设计  中图分类号:F
期刊
摘 要:随着电网规模的日益扩大,人们在日常的生活和工作的过程中,对于电力的依赖程度也在不断的提高,因而人们对整个电力系统的安全性也提出了更高的要求。电力调度自动化系统是控制电网以及对其进行合理监测的重要系统,它与电力系统运行的稳定性以及可靠性具有直接联系,且该系统的能否安全稳定运行,也对电网的整体运行具有直接影响。文章对电力调度自动化系统与数据网安全技术进行了深入的研究,并详细阐述了电力调度自动化
期刊
摘 要:物资计划管理为实现公司经营管理目标发挥着重要作用。开发物资计划审核辅助系统,部署于公司ERP,形成统一管理平台。批次采购计划通过系统自动分析,可以准确分配采购批次,自动提示申报错误。经过实际应用,证明该系统显著降低人工审查工作量和人为操作误差,提高计划申报质量和审核效率。  关键词:物资计划;审核辅助系统;开发;应用  中图分类号:TP399 文献标识码:A 文  1 引 言  电网公司所
期刊
摘 要:我国是农业大国,无论是建国以前还是改革开放以来,农业都是我们人民赖以生存的重要支柱。从农耕文明到现代社会,农业机械的变革和进步是提高我国农业的重要部分。现代机械设计方法在农机设计中随着科学技术的不断进步也有很大的发展和提高。文章将就现代机械设计方法及其在农机设计中的应用过程进行阐述和探讨。  关键词:现代机械设计方法;农机设计;应用研究  中图分类号:F224;F407.6 文献标识码:A
期刊