手游引擎Unity和Cocos各有什么优劣?

链接:https://www.zhihu.com/question/23499299/answer/24899792

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

以下我以“大型3D、大型2D、中小型2D和微型2D”来划分,尽可能减少”纠结“感。

因为引擎的选择一向做不到“以偏概全”,他们各有所长,应选择自己适合的。

尤其是差异化这么明显的两个引擎。

一、3D游戏(包含2.5D

只能:Unity3D

作品:职业棒球、星际陆战队等

分布:欧美国家用Unity3D的较多。商业化引擎中,3D游戏占比最高

原因:

就像@朱云所说。Cocos2d-x目前还不支持3D相比而言,U3D就是你唯一的选择了。

二、大型2D游戏(可以指安装包上百兆的)

推荐:Unity3D

作品:捣蛋猪、冰雪奇缘、天天飞车、绝代双骄等

分布:欧美国家用Unity3D的较多,国内用Cocos2D-X的多

原因:

1、游戏这东西,就是要跟直觉打交道的

我的想法有点极端,我感觉在游戏世界里,代码似乎更像是“妥协”的产物。

如果能做到“所见即所玩”,那真的是一个非常惬意的事。到时候,或许一个8岁小孩就能独立自主的开发一款游戏。

而这一点,Unity3D的王者地位,当之无愧!

2Unity3D提供了超赞的设计工具,让你感觉像是在用3DMaxFlash来做游戏

3、适合大型团队,美工、动画更容易上手

U3D可以让美工、动画、码农在同一个平台上各司其职。这点从目前来看,Cocos2D-X望尘莫及。

三、中小型2D游戏(百兆以内的)

推荐:Cocos2D-X

作品:捕鱼达人、我叫MT、2048等

分布:东亚游戏多出自Cocos2D-X,尤其中国。但大多为小型游戏

原因:

1Unity3DCocos2D-XAPK包要大了近十倍

仅以Android手机为例,同样的一个2DHelloWorld,两者的安装包大小:

Unity3D:约为9.27M

Cocos2D-x:约为1.67M

解开包后发现,里面除了两个一共占据近12M的SO库(libmono.so和libunity.so),还有一票的DLL文件。其中System.dll、Assembly-CSharp.dll和mscorlib.dll这三个核心文件就占了5M。虽然它们压缩比约为50%,但仅这些文件就占了这么多。心疼啊。

而这,在寸土寸金的中小型游戏面前是多么可怕的数字。

2Cocos2D-XUnity3D快很多

即使不用测试工具,也可以轻易的发现这一点。

主要因为Unity3D用了Mono架构,它移植自微软的.Net。每次启动都会加载Mono框架和Unity3D引擎,再加载.Net Assembly(一堆DLL文件),这可比Cocos2D-x这种纯C++(包括Lua和JS)实现要慢很多。

3、独立开发者更喜欢游戏

独立开发者大多是“技术达人”(不然怎么开发游戏)。U3D会让他们有“无所适从”感,从而影响了对U3D的灵活运用。对这些人而言,这是赤裸裸的时间成本。在游戏开发中,这点尤为重要。还是Cocos2D-X让他们更感到亲切”,更有成就感

也许你会问:“你怎么知道?”

因为我就是搞技术的。

4、中国游戏多出自Cocos2D-X

Cocos2D-X是正宗国产货,又是优秀的开源项目,国外用户群也不少。

也正是因为这个原因,C2D天生就对中国用户很“偏爱”。比如社区,我在上面问了两个问题,基本上当天问当天答,而且非常热心。从这一点我就对C2D产生了不错的好感。

5、Unity3D要收费

对大型2D游戏团队来说或许还不算什么。

初步算一下,Pro要1500$,手游怎么至少也得兼容iOS和Android吧,各自1500$,再加个Team套装,加一块儿,5000$,两万多银子。

Cocos2D-X免费、开源。遇到问题可以研究源码或向社区求救。

四、微型游戏(指争取安装包在1M以内的)

推荐:AndEngine、Cocos2D-iPhone

作品:Flappy Bird、小球快跑、五子棋等

分布:不需要跨平台的超小游戏用的多。

原因:

如果只想在一个平台上开发游戏,无疑上述两种是最好的选择

其中AndEngine开发出来的游戏最小才400多KB,大名鼎鼎的Flappy Bird就是用它做出来的。

另外,iPhone的Cocos2D划到这里似乎不太合适,但仔细想想,现在有更成熟的Cocos2d-x方案,Cocos2D划到微型游戏一列,相信是早晚的事(个人看法,轻拍)。

五、总结

1、Unity3D:如果你需要开发大型游戏,或需要开发3D游戏的,请选这个。

2、Cocos2D-x:如果你开发的是中小型游戏,对安装包大小比较在意的,请选这个。

3、Andengine、Cocos2D-iPhone:如果你只为开发单平台游戏,又非常在意速度和安装包大小,请选这个。

最后。俗话说:没有最好的,只有最适合自己的。我想这句话同样适用于开发游戏。

共勉!

你可能感兴趣的:(手游引擎Unity和Cocos各有什么优劣?)