游戏开发——各大游戏引擎介绍和对比

游戏引擎是指一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件。这些系统为游戏设计者提供各种编写游戏所需的各种工具,其目的在于让游戏设计者能容易和快速地做出游戏程式而不用由零开始。大部分都支持多种操作平台,如Linux、Mac OS X、微软Windows。游戏引擎包含以下系统:渲染引擎(即“渲染器”,含二维图像引擎和三维图像引擎)、物理引擎、碰撞检测系统、音效、脚本引擎、电脑动画、人工智能、网络引擎以及场景管理。

cocos2d

Cocos 2d是一个基于MIT协议的开源框架,用于构建游戏、应用程序和其他图形界面交互应用。可以让你在创建自己的多平台游戏时节省很多的时间。

Cocos2D拥有几个主要版本,包括Cocos2D-iPhone、Cocos2d-x,以及被社区普遍看好的Cocos2D-HTML5和javaScript bindings for Cocos2D-X,拥有非常优秀的编辑器。很多策划认为Cocos 2D对于新入行的开发者来说不仅具备大量功能,而且非常容易上手。虽然该引擎比较复杂,但值得一提的是其功能和灵活性。

  • 优点:强大而且灵活;理论上来讲,你可以为自己的游戏加入所有的iOS功能;提供成熟的框架和多种工具;开源、免费,社区支持强大。

  • 缺点:和同类引擎相比比较复杂;学习门槛相对较高;特别适合Mac或者iOS平台,不过并不是跨平台引擎。

unity

Unity 3D是一个用于创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的综合型创作工具,由Unity Technologies开发,是一个全面整合的专业游戏引擎。

对游戏开发者们来说,Unity 3D是一个真正可以负担得起的引擎,具有其他引擎难以匹敌的用户量。更重要的是,你只需要付费一次,而且,不管你的游戏如何成功,都不用担心Unity会分走你的收入。这对于很多开发商来说当然是非常具有吸引力的,尤其是初创公司和新入行的开发者们。

  • 优点:业内最 具竞争力的授 权条款;易于使用,且兼容所有游戏平台;开发者社区支持强大;学习门槛非常低;开发商使用率最 高。

  • 缺点:工具数量有限,所以开发商必须给自己创作工具;做复杂和多样化的效果比较耗时。

虚幻

虚幻引擎的设计目的非常明确,每个方面都具有较高的易用性,尤其侧重于数据生成和程序编写的方面,这样,美工只需要程序员的很少量的协助,就能尽可能多地开发游戏的数据资源,并且这个过程是在完全可视化环境中完成的,实际操作非常便利。

数年以来,虚幻引擎一直是做高端EA游戏最 受欢迎的引擎。《战争机器》、《蝙蝠侠:阿卡汉姆疯人院》(Batman:ArkhamAsylum)、《质量效应》以及其他很多著名作品都是出自该引擎之手。

  • 优点:开发商使用率较高,开发商社区强烈支持,有视频教程和大量资源。拥有最 佳的引擎支持,随时更新其他引擎平台的功能,增加新的工具,且管理相对容易,工具简单易用。很多系统都兼容,如:iOS、Android、Linux、Mac、Windows等和大多数游戏主机。

  • 缺点:授 权条款只适合大作,商业授 权价格为99美元,在游戏收入超过5万美元之后,必须支付25%的分成。也有一些开发者抱怨有些工具不好用,学习门槛较高。

layabox

Layabox 有两个框架;

  • LayaFlash是面向Flash AS3程序员的,可以用AS3语言直接开发H5产品,也可以把AS3源码的项目发布成H5项目。主要用于开发大游戏。
  • 另一个框架是LayaAir支持三种语言开发(AS3、TypeScript、JavaScript)这是全新的开发框架,与Flash没关系了,是一个超牛的全新H5引擎,支持重度、中度、轻度的游戏开发,支持应用、网站的开发。

libgdx

Libgdx 是一个跨平台可视化游戏开发框架。它支持Windows, Linux, Mac OS X, Android, Blackberry, iOS, HTML5 平台。

Libgdx 可以让你写一次代码不需要修改就可以部署到多个平台。你在电脑环境中可以很快的编译, 通过编译HTML5而不是等待运行在设备上。你可以使用所有Java提供的工具。因为他是运行在JVM, 你也可以随意使用其他好的非Java语言(Kotlin, Scala, Clojure等)

必要时, libgdx 可以不用Java编写, 使用native代码调用以达到最好的性能。所有的函数都有Java的API, 所以你不必要担心所有平台的跨平台native代码调用。很多地方的libgdx运行平台问题已经被发现, 所以你不需要处理他们。

Libgdx使用一个框架而不是一个引擎, 它不是所有的问题都可以解决。反而, 我们给你一个强大的抽象概念, 让你选择怎样写游戏跟应用。

love2d

Love2D是一个开源的, 跨平台的2D游戏引擎。使用纯Lua脚本来进行游戏开发。目前支持的平台有Windows,Mac OS,Linux。另外在社区里,还有Love2D-android版本,而且也有进军IOS的计划。

这个游戏引擎在国内听说或者是使用的人可能不是很多,但是在国外还是有很大一部分的使用人群的。

白鹭ergt

Egret是TypeScript语言开发游戏用的。是围住神经猫这个游戏把引擎推火了,也一直致力于小游戏的开发。目前在小游戏的研发市场上品牌作的不错。

更多对比:https://blog.csdn.net/enweitech/article/details/72820183

百科推荐著名引擎

  • 著名的MMOG专用商业引擎有:
    • EA DICE的寒霜引擎、寒霜2引擎、寒霜3引擎。(战地系列游戏作品就是采用此引擎)
  • BigWorld公司的BigWorld引擎。
  • Emergent公司的Gamebryo引擎。
  • EPIC公司的虚幻引擎、虚幻2引擎、虚幻3引擎、虚幻4引擎。
  • Crytek公司的Cry Engine 1引擎、Cry Engine 2引擎和Cry Engine 3引擎。(孤岛危机系列、战争前线等)
  • Garage Games公司的Torque 3D引擎。
  • Hero公司的Hero Engine引擎。
  • 北京目标软件公司的OverMax引擎。
  • Quantumas引擎(国人开发)
  • Valve公司的Source Engine(起源引擎)
  • Infinity Ward工作室的IW 引擎。(其中有IW 2.0、IW 3.0、IW 4.0、IW 5.0版本,著名的使命召唤系列游戏作品就是采用此引擎,中文译名无尽引擎)
  • 幻影游戏引擎(国产,支持PC、IOS、Android的3D和2D游戏开发,也可以支持Web2D),支持程序语言:C++、Lua、VB、C#、易语言、Objective C、javascript。
  • 搜狐畅游公司的黑火引擎
  • 完美世界公司的Athena引擎
  • Unity Technologies开发的Unity3D引擎
  • 日本SiliconStudio公司的Orochi 4(Mizuchi图形引擎)(square-enix公司Gunslinger Stratos系列使用的引擎) [3]
  • 日本Square enix公司的Luminous(夜光引擎)(最终幻想15使用的引擎) [4]
  • 克罗地亚Croteam公司的Serious引擎(代表游戏为《英雄萨姆》、《英雄萨姆:第二次遭遇》),Serious II引擎(代表游戏为《英雄萨姆2》)
世界知名游戏引擎排名
坚持原创技术分享,您的支持将鼓励我继续创作!