Advertisement

手机游戏引擎的选择--学习游戏开发Cocos2d-x和Unity3D/2D哪个前景更好?更易上手?

阅读量:

如今的手游市场状态不佳,各类引擎层出不穷,除了Unity3D在3D领域的领先地位外,还有Cocos2D-X在2D领域占据主导地位,此外还有虚幻技术公司开发的Sphinx引擎以及国产的Genesis-3D引擎等。本文重点对比分析的是Unity3D与Cocos2D-X这两种主流引擎的技术特点及其适用场景,旨在帮助开发者根据项目需求做出合适的选择。

如果你准备创建一个二维游戏,并具备C++/C/LUA中的一种语言基础,那么另一种选择是使用Cocos2D-X。它专为开发二维游戏而设计,并提供详尽的源代码库、大量实践案例以及全面的学习资料。能够享受到丰富且活跃的支持社区。

如果你准备开发一个三维或二维游戏,并且具备面向对象编程语言的基础(例如Java、C#、ActionScript等),那么Unity 3D将会是一个非常合适的选择。尽管它主要专注于三维技术的研发...不过在Asset Store上依然能找到丰富的插件资源...这样即使你是想制作二维游戏也会变得相对容易一些

然而将这两者直接对比显得力有未逮。Cocos 2D-X主要是一个基于二维游戏渲染的技术框架,并非严格意义上的渲染引擎,在其内部仍运用了许多三维技术辅助效果实现。相比之下.Unity则是一个综合性的解决方案,在最初是针对三维应用进行了深入研发;为了满足用户对二维游戏开发的需求而发展出一个二维插件,并逐渐演变为一套支持多种功能模块的系统性工具包。后来公司决定将这一插件的功能系统化、模块化地进行官方开发,并将其部分功能逐步整合到现有的Cocos 2D-X框架中以提升兼容性和扩展性能力。这方面的讨论主要是围绕概念展开的。

基于概念回归到问题,在学习这两个方面时,并非是两个独立的技术领域方向;而是属于两个不同的游戏开发类型领域。因为如果对Unity掌握得非常熟练,则Cocos2d-x的功能可以说是一个子集(主要集中在场景渲染与管理上)。因此可以说,在初学阶段来说:如果你不想仅专注于二维游戏开发,则完全可以从Unity入手;理由在于:

1、完整的解决方案中学习一个完整方案后,其余相关内容易于快速掌握;
2、丰富的资源储备为学习提供了充足保障;
3、无需面对C++带来的复杂性挑战,可以专注于技术点的学习与积累;

在学习难度方面,个人认为若具备良好的编程基础,则C cocos2d-x的复杂程度较低,并其包含的功能模块较为简单;然而若不具备良好的编程基础,则情况有所不同,并从亲和性角度来看,在入门者中可能更倾向于选择JavaScript或C#作为学习起点。

那么我个人是怎么选择Unity3D和Cocos2D-X的?
我自然是选择Unity3D:
1、虽然你现在可能是做2D游戏,但如果你以后想做3D呢?用Unity3D的话从2D到3D的转换成本很低。
2、丰富的插件支持。
3、成熟的工具以及强大的编辑器拓展,让你可以很方便的定制适合自己项目需要的编辑器。
4、内置强大的性能分析工具。
5、几乎支持所有主流平台:WEB、Win、Mac、IOS、Android、XBox、PS3、Wii

6、Unity 5还具备更为完善的光照系统、UI架构以及可顺利发布为HTML5版本的技术特点。可以看出该引擎的发展趋势是迅速的。

全部评论 (0)

还没有任何评论哟~