从容的开始一个项目
最近一个项目是一个麻将类的项目,由于面向地区是四川地区,所有里面涉及到的都是四川麻将的玩法,比较流行的玩法如血战到底、血流成河,这两种的玩法的区别主要是前者胡牌后由剩余玩家继续出牌,直至全部胡牌或者是流局,后者某一玩家胡牌后还可以胡牌,直至发牌完毕结束,然后根据胡牌情况等计算输赢结果。说到麻将,在我们那边打麻将大多数情况下都意味着赌博,当然也不乏打麻将纯粹以娱乐为目的的,而恰好与四川这一带对待麻将的态度截然相反,当然这也有一定的地域特征及不同文化所决定。由于不怎么会打麻将,具体麻将玩法就不敢在这里赘述了。
刚开始做这个项目,我相信团队小伙伴也肯定是懵逼的,因为都不怎么会打麻将,不知道如何着手,甚至不知道选用哪种游戏引擎来进行开发比较合适,以前的开发过程中也听过一些游戏引擎如 Cocos2d-x、Unity3D 等,但听过总归离实际开发差的远,后来分析了一下面临的问题,一是不会打麻将(会打会肯定比不会要好一点),二是从来没有过游戏开发的经历,三是开发周期短且跨平台。
由于要在 Android 和 IOS 上运行,经过和小伙伴的商量,决定选用一样的游戏开发引擎,分工合作,然后将各个模块的代码合并,在通过编译将该项目打包的不同的平台,这样子可以节省开发成本和开发周期,能够在 Android 和 IOS 上都能运行的,我们首先想到是 C++,于是先选择 Cocos 2d-x 作为该项目的游戏开发引擎, 决定先看一看 Cocos 2d-x 的相关知识,然后在决定这个方案能否行得通。
上面提到的三个问题,前两个是不会的问题,只有一种解决办法那就是适当的学一下,第一,不会打麻将,首先要认识麻将类型,了解最简单的一些规则,如什么时候可以碰、什么时候可以杠等;第二,没有游戏开发的经历,想想刚开始也不会 Android 开发,也还不是一步一步走过来的,那就学一点游戏开发相关的知识吧,至少能够解决项目中的问题。最后一个实际上是开发效率及开发方面的问题,只要选择好方案、掌握好进度,应该是没有问题的。
经过几天的准备,发现短期内使用 Cocos 2d-x 开发出一个完整的商业项目还是有一定难度的,于是选择 Cocos 引擎官方团队开发的基于 Cocos 2d-x 的游戏编辑器 Cocos Creator 来进行该项目的开发,下面是官网上对 Cocos Creator 的概述:
Cocos Creator是以内容创作为核心的游戏开发工具,在Cocos2d-x基础上实现了彻底脚本化、组件化和数据驱动等特点。
Cocos Creator基于开源框架Cocos2d-x,实现了一体化、可扩展、可自定义工作流的编辑器,并在Cocos系列产品中第一次引入了组件化编程思想和数据驱动的架构设计,这极大地简化了Cocos2d-x开发工作流中的场景编辑、UI设计、资源管理、游戏调试和预览、多平台发布等工作,是使用Cocos2d-x进行团队协作开发的最佳选择。
目前,正在尝试学习使用 Cocos Creator 进行相关游戏界面的搭建,总体感觉还是比较方便的,感觉入门比较简单,感觉最好的一点是 Cocos Creator 的适配还是比较强大的,对于比较复杂的界面加了约束,反而会使的布局层级变得复杂,推荐比较复杂的界面不要加太多约束,有可能导致界面卡顿,一般的界面还是添加约束比较好,当然这只是个人的看法,还是推荐大家添加约束,毕竟添加约束有利于不同屏幕状态下的适配工作。顺便再吐槽一下 Cocos Creator 的开发文档,个人觉得文档还需完善,许多东西只能通过 Cocos 论坛网友们的回答解决,当然, 不能过于强求,Cocos Creator 还在不断完善中。如果你打算学习游戏开发或者比较感兴趣,可以尝试从 Cocos Creator 开始入门喔。
今天就写这么多,后面的文章打算记录一下如何使用 Cocos Creator 进行一些简单场景的开发,主要以案例的形式整理出来,一方面作为自己的学习记录,另一方便希望别人能够看懂,为了防止自己偷懒,在此声明至少推送 10 篇有关 Cocos Creator 的相关文章。