让不懂编程的人爱上Unity3d游戏开发 2020版006

作者: eseedo 分类: Unity3d入门,游戏开发入门 发布时间: 2020-02-03 19:07

Cha1-初识神兵:为什么是Unity

在上一课的内容中,我们一起简要了解了游戏引擎的基本构成。

在本课的内容中,我们将一起来对比分析一下当前的几款主流游戏引擎,从而判断一下Unity3d是不是最符合自己需求的。

006- 主流引擎的对比分析

在游戏引擎的发展史上,曾经出现过众多璀璨的明星,至今仍然星光闪耀。打开维基百科,在游戏引擎清单的词条下会看到长长的一串列表,比如Unity3d,Unreal Engine(虚幻),CryEngine,Cocos2d,Corona,Frostbite(寒霜),Gamebryo, GameMaker, id Tech系列,Infinity Engine,OGRE,Panda3D,Renderware,RPG Maker,Source,Torque3D,等等。

其中有些引擎大家可能听说过,比如Unity3d、Unreal Engine(虚幻)和Cocos2d,而更多的引擎则很少为常人所熟知。

这里我们先简单介绍一下其中的几款主流游戏引擎,然后再放在一起对比分析:

1.Unreal Engine(虚幻引擎)

Unreal Engine是由Epic Games开发的一款商用游戏引擎,第一个版本发布于1998年,由创始人兼如今的CEO Tim Sweeney一手打造。令人敬佩的是,虽然早已功成名就,但是Tim Sweeney仍然亲自参与了虚幻引擎几大核心版本的开发,包括如今制霸天下的虚幻4。在我个人的心目中,他和担任Oculus CTO的John Carmack是不折不扣的超级游戏大神。每当他站到GDC年度大会的讲台上用一种略带含糊的口音介绍虚幻引擎的最新进展时,台下的开发者就如同小学生一样目不转睛全神贯注的仰望着自己的老师。

Epic Games本身也开发自己的游戏内容,虚幻引擎最初就是用于开发Unreal(虚幻)这款游戏的~

因为虚幻引擎的基因源于开发FPS射击游戏,所以它非常适合用来开发第一人称视角的游戏。当然除此之外,虚幻引擎也非常适合用来开发格斗类游戏,RPG(角色扮演游戏)和MMORPG(多人在线角色扮演游戏)。

在2014年3月的时候,Epic发布了虚幻引擎4(Unreal Engine 4),也就是俗称的UE4(虚幻4)。虚幻4本身用C++开发,并支持使用C++编写游戏脚本。

Unreal Engine曾用于开发多款PC和主机平台上的3A级别大作。使用虚幻引擎开发的游戏画面表现力惊人,而且在Github上开放了引擎的所有源代码。

使用虚幻4引擎开发的最知名游戏莫过于这两年火爆全球的《绝地求生》和《堡垒之夜》了。

虚幻引擎的早期授权价格对于小型开发团队来说是个天文数字,比如1999年的虚幻引擎授权费用是35万美元,后续版本的授权费用更是曾高达数百万美元,但是目前已经完全免费。

遗憾的是,虽然虚幻引擎的功能很强大,但是学习曲线比较陡峭,入门相对较难。

需要特别指出的是,早在2012年,腾讯就以3.3亿美元收购了EpicGames公司48.4%的股份,而如今EpicGames的市值在成功推出《堡垒之夜》后已经飙升到接近150亿美元,只能说腾讯的投资部分眼光太棒了。

虚幻4引擎的源代码在github上托管,可以参考这里:https://github.com/EpicGames/UnrealEngine 

感兴趣的童鞋可以了解下~

2.Unity3d

相比虚幻引擎这种专业且复杂的游戏引擎而言,Unity引擎自诞生的初衷就是:人人皆能开发游戏。Unity 的编辑器界面简洁易上手,脚本语言支持 C#,而且教程、资源非常丰富,开发者能够很轻松地上手进行开发。

随着Unity的不断迭代更新,曾经为人诟病的渲染、光照、粒子特效等影响游戏视觉效果的部分已经大大提升,最新的Unity 2018.3.x版本和即将推出的Unity 2019版本更是有了质的飞跃。

除此之外,相比虚幻引擎而言,Unity的另一个巨大优势就是,它提供了一个类似Appstore的素材资源商城Assetstore,其中包含了游戏开发所需的各种资源,包括3D模型、音效资源、骨骼动画、各种强大的功能插件等等。小型团队和独立开发者可以充分利用Assetstore中的资源快速创建游戏,而虚幻引擎虽然也拥有自己的素材商城MarketPlace,但是其中的资源数量相比Assetstore实在是寥寥无几。

Unity3d自其诞生以来,很快就在3d手游开发领域占据了主要的地位。虽然Unity从4.x版本也开始支持2D游戏的开发,但这显然并不是它的强项。

关于Unity3d引擎,接下来将进行详细的说明,所以这里就不赘述了。

3.Cocos2d

和UE4/Unity3d引擎不同的是,Cocos2d自2008年诞生之初就是一个开源的游戏引擎。Cocos2d的诞生得益于iPhone的推出和移动互联网的兴起,也是我个人接触的第一款游戏引擎。我公开出版的第一本技术类书籍就是《Cocos2D权威指南》(2011年出版)。

最早期的Cocos2d是Python版本的,很快就在此基础上派生出了Cocos2d-iPhone版,其实就是cocos2d-objc版本,专门用于开发iOS平台的2D移动游戏。

随着手游的兴起和爆发,越来越多的中小团队开始采用cocos2d引擎开发游戏。因为它最大的特点就是完全开源且免费,但功能却很完备,而且简单易上手,非常适合个人开发者和小型团队。

当然,cocos2d引擎的流行跟王哲和触控科技也密不可分。王哲在cocos2d-iphone版的基础上开发出cocos2d-x,也是当前cocos2d最流行的分支版本。它基于C++语言开发,支持跨平台开发,包括iOS、安卓、Windows和Web。

最巅峰的时候,AppStore和安卓手游排行榜上90%的游戏都是采用cocos2d开发的。不过因为cocos2d在3D领域跟Unity3d/UE4无法相提并论,也因此当3d手游越来越流行的当今,采用cocos2d开发的游戏作品数量和比例大幅下降。虽然cocos2d也宣布开始支持3D和VR,但大家已经形成的刻板印象短期内并不会发生大的变化。

即便如此,如今cocos2d仍然是开发2d休闲游戏的第一选择。特别是微信推出了小游戏平台之后,cocos2d第一时间也开始支持小游戏平台,从而为自己开辟了另外一个全新的领域。

cocos2d引擎的源代码在github上托管,感兴趣的童鞋可以了解下~https://github.com/cocos2d/cocos2d-x

4. CryEngine

令人遗憾的是,CryEngine如今真的要cry了,因为它已经濒临破产。而且不是类似Sony破产传闻的那种假消息,而是真的撑不下去了。

CryEngine是由Crytek打造的次时代游戏引擎。Crytek是一家德国公司,它和Epic Games类似,不光自己开发游戏,还把自己开发游戏的丰富经验和储备融入到一款强大无比的游戏引擎之中。

CryEngine曾经打造过号称显卡杀手的《孤岛危机》系列,也曾开发过《罗马之子》这样的巨作。

幸运的是,2018年凭借《猎杀:对决》这款大作,Crytek又给自己续了一条命。只不过,面临诸多强敌,Crytek和CryEngine最终将走向何处,仍未可知。

CryEngine使用C++开发,如今的授权费用是每个月9.9美元,无需向Crytek支付任何收入提成,同时其代码也托管在Github上,但仅限开发游戏使用。

感兴趣的童鞋可以研究下~ https://github.com/CRYTEK/CRYENGINE

5.Source引擎

Source引擎是Valve公司为开发当年红透半边天的《半条命2》而研发的游戏引擎,是GoldSource引擎的继承者,而GoldSource则基于游戏大神John Carmack的Quake引擎重度改编而来。如果你不知道Valve,那么作为一个玩家,对Steam和G胖肯定是略有耳闻的吧~

使用Source引擎开发的游戏包括《半条命》系列、《CS反恐精英》系列、《军团要塞》系列、《求生之路》系列、《胜利之日》系列和《DOTA2》等等。

Source引擎使用C++开发(又一个~看来不学C++是没法在游戏开发圈里面混了),如今最新的版本是Source2。初学者可以免费使用Source引擎,但如果要出售自己使用Source引擎所开发的游戏,恐怕就要和G胖大叔说道说道了~

关于Source引擎授权的更多信息,感兴趣的童鞋可以参考这里:https://partner.steamgames.com/doc/sdk/uploading/distributing_source_engine 

此外,关于Source 1 SDK 2013版的源代码,可以在github上找到:https://github.com/ValveSoftware/source-sdk-2013

6.寒霜引擎

除了以上3款流行度极高的商业游戏引擎,还有一些引擎虽然战功卓越,但因为是某个大厂的独有神兵,别人只有眼馋的份儿。

比如EA公司旗下的DICE游戏工作室为开发著名的《战地》系列而研发了寒霜引擎(Frostbite)。寒霜引擎的最大特点是可以用来制作庞大而又拥有无比丰富细节的大型游戏地图,可以消耗较低的系统资源来实现场景中物体都可以破坏的效果。

具体有多大呢,据说可以支持可见范围32×32公里,可活动范围最多4×4公里的超大型地图。

除了擅长制作大地图和场景中的全破坏效果,寒霜引擎另外一个引以为傲的特殊就是支持HDR(高动态声音渲染)音效,让游戏中的音效如同现实中一样真实。

寒霜引擎中内置了Havok物理引擎来呈现出逼真的物理效果。

此外,内置的编辑器FrostED采用了图形化操作界面,让美术团队的成员也可以轻松参与游戏制作过程。

寒霜引擎并没有授权给其它的游戏开发团队,因此用它开发的主要作品时EA旗下的《战地》系列,《极品飞车》16,18,20,《荣誉勋章》,《星球大战》,《龙腾世纪》,《质量效应》等等。

所以,虽然它很NB很强大,但如果你不是EA的一份子,想也不要想~

而且,寒霜引擎另一个致命的弱点是,很难在低性能的设备上完美运行。这也是为什么我们没有看到EA的手游作品采用寒霜引擎开发的原因。

关于寒霜引擎更多的讨论,可以参考:https://www.zhihu.com/topic/19927364/hot 

7.其它引擎

还有一些很NB哄哄的引擎,同样因为是私家独享的,所以并不为外人所知~

(1)Creation引擎

Bethesa的《上古卷轴5》(又被称为“老滚”)系列使用的就是公司放弃Gamebryo后自主研发的Creation引擎。

(2)IW Engine(无尽引擎)

无尽引擎属于动视暴雪旗下的游戏工作室Infinity Ward,并作为游戏的主引擎开发了大名鼎鼎的《使命召唤》系列。

(3)Angelica III引擎

Angelica III引擎是由完美世界公司自主研发的游戏引擎,完美世界所推出的绝大部分网游作品均采用Angelica引擎,比如《武林外传》,《完美世界》,《诛仙》,《赤壁》,《口袋西游》,《笑傲江湖》等。

(4)NeoX引擎

NeoX引擎是网易的一款自研引擎,差不多有十年多历史,使用NeoX引擎开发的著名作品包括《梦幻西游》,《大话西游2》,《乱斗西游》,《功夫熊猫3》,《阴阳师》等等。

(5)Messiah引擎

除了NeoX引擎,网易还从2013年开始研发一款名为Messiah的新的3D游戏引擎。基于Messiah的作品包括《楚留香》,《天下》,《荒野行动》等。

(6)黑火引擎

黑火引擎是搜狐畅游自主研发的3D游戏引擎,据说《轩辕剑7》就是由黑火引擎打造的。

(7)剑网3引擎

剑3引擎是由金山软件西山居研发的,专门为《剑侠情缘网络版3》开发的一款游戏引擎。

(8)Flexi引擎

Flexi引擎是由蜗牛游戏自主研发的次时代游戏引擎,曾用于开发《九阴真经》。但《九阴真经2》则采用了虚幻4引擎开发。

当然,以上所提到的引擎只是九牛一毛。

更多的引擎可以参考:https://en.wikipedia.org/wiki/List_of_game_engines

看了如此之多的游戏引擎,可能你已经眼花缭乱了。那么对于初学者来说,又该如何选择呢?

首先,个人认为还是要首选比较流行的商业授权引擎。

因为这些引擎无论从技术资料的丰富度,还是讨论社区的活跃度,以及官方的技术支持力度,都远远超过那些非主流的游戏引擎。

而对于某些游戏大厂或工作室独有的引擎,无论有多么的NB,如果你没机会进去工作,那么既没有机会学,也没有机会用,说了等于白说~

从这个层面来看,对于初学者来说,其实要做的就是从Unity3d、虚幻4和cocos2d三款游戏引擎中做选择而已。

接下来我们对这三款游戏引擎做一个小小的对比分析。

问题来了,我们应该从哪些维度来对比呢?因为游戏引擎要对比的维度实在是不少:比如商业授权费用、跨平台的支持、资源的丰富度、引擎的更新频率、技术支持、渲染效果、性能的消耗、编辑器的易用性、案例丰富度。。。

虽然有如此多的维度,但是我个人比较看重以下几个维度:

1.引擎的视觉渲染效果

2.跨平台的支持

3.上手学习的速度

4.学习资源和技术支持

话不多说,这里直接上表,给大家直观展示以下:

当然,以上对比只是纯个人观点,仅供大家参考。

也许你已经发现了,对于新手来说,如果希望尽快完成自己的第一款游戏作品或 AR/VR 作品,那么无疑 Unity 就是最好的选择。不需要太高的成本,也不需要太多精力,只要你有丰富的创意,就可以立即动手开发游戏和AR/VR 作品。

好了,本课的内容就到此结束了。

相信看到这里,你应该完全明白了Unity3d的优劣势所在,今后在不同的产品或项目中,可以有针对性的选择自己所需要的引擎。

从下一课开始,我们将主要关注和Unity3d相关的一切,让我们下一课再见~

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注