光阴似箭,小编也开始踏入职场。怀着一颗忐忑的心情上了班,也是在这个背景下,小编也有缘接触Cocos2dx,这个我以前听都没听过,也从不会去想到自己也会开始使用这样的工具去开发2D游戏。本着一种随遇而安的心态干了起来,很开心,在初次听到cocos这个高大上的词到编译出一个apk装到手机,我花了5天的功夫,对于没用C++,写过代码的我,还是蛮有成就感的。
刚上班的第一天,跟leader谈完话之后,我就开始恶补C++的知识,幸好有点C语言和Java的底,对Cpp有了一种大致了解的感觉,我就开始看什么叫Cocos,先是看了百科,然后再到官网,由此知道了cocos的大致发展,原来cocos之前有一个IOS的开发版本,后来为了兼容大多数平台,便出现了Cocos2DX。紧接着就想开始配置环境,毕“工欲善其事,必先利其器”。进入官网。
好吧,这些都是啥,首先COCOS CREATOR,是一个IDE,但是经了解,这个IDE不支持C++的开发,我的leader明确跟我说,要用C++。补充一句,这类入门文章还是有时效性的,所以越老的文章参考性越低,如果你看到这篇的时候已经是202几年的话,估计也就没什么用了。因为在此之前,Cocos还有一个Cocos Studio的编辑器。注意,这些工具啊,开发流程的各种概念,工具的作用啊,操作顺序一定要区分好,这样会少走很多的弯路。
这里,我只需要下载中间这个cocos2dx V.3.16,这个是cocos的框架代码。目录结构如下:
一开始拿到这个之后,就不知道要做什么,要使用什么编译器开发,要怎么才能把程序编译,然后,可以下载到手机。查看了不少的博客,如上所说,时效性问题坑害了我,走了一点弯路。
环境的配置,我只是简单叙述一下,具体的操作,大家参考相关的博客。首先是,Android Studio(我使用的是3.0),及相关的SDK、NDK、还有Ant,还有VS(我使用的是VS2017)。对了,还有Python,cocos的构建工作,很多还是靠的是Python这个工具,注意,python是2..7X,而不是Python3.5X,这个在官方的文档里可以看到。仔细看官方文档还是可以走少点弯路。装完这一切之后,在cocos下的setup.py,使用python运行它,这个脚本会给你配置好环境,使得你之后可以使用cocos这个命令,之前,小编也是在纠结,这个框架到底是怎么一个流程。事实上,功劳都是这个cocos命令。
目录下的Build下,cocos2d-win32.sln,用VS2017打开,即可以帮你将工程完整地导入vs环境里,之前还在吐槽VS难用的我,瞬间改变了我的看法。打开之后,运行一下,第一次运行会特别久,请多一点耐心,即可看到官方的许多游戏效果。当然这是Win32的环境。
而工程结构是这样的:陌生的我表示不懂,但是仔细对比cocos的目录下,还是发现不少的东西,原来,VS就是将需要的各种工程文件导到这里。大家自己对比一下,会发现恍然大悟,这里,不细讲,cocos、extensions、txternal这些,都是框架的代码。
然后,templates这里边是一个Helloworld工程,新建工程时,会从这里复制工程,然后再进行个性化修改,当然,这是由脚本来完成的。
有一个新大陆,就是docs,里边有一个,doxygen_white_book.config,这个是c++文件,注释生成api文档的文件,这里需要下载doxygen软件来生成,具体百度一下,你会发现在docs目录下生成了一个html文件,这个就是api文档。
test里有一个cpp-tests就是之前的示例工程,这里用来学习是非常有帮助的。其他语言的类比。
之前的setup.py运行完之后,即可以使用cocos命令。
利用cocos生成一个新工程:
cocos new MyGame -p com.your_company.mygame -l cpp -d NEW_PROJECTS_DIR
如果你的环境配置好的话,这里会很顺利。然后,我建议到这里把工程(proj.android-studio)导入到你的Android Studio进行各种Gradle的配置,这里跟你在Github里下载别人的工程的配置流程一个,看Log,找错误,百度。循环即可。
如果你很幸运地运行起来的话,那么恭喜你。脚已经抬到了门槛的上边了。
当时弄到这里,我就不知道要怎么进行下去,找了很多的书去看,但是各种书讲解的角度各不相同,语言用的也不一样,有些一上来讲了各种历史,OpenGL。
我记得学习安卓的时候,有一些好的教材,你跟着他走一些项目,然后在这个过程中去学习api(之前用doxygen生成的那个),然后就可以慢慢对它有一些了解,这样一来,兴趣就浓了,到了后期,接触一些难的、挑战性的项目才有兴趣。在百度上找了很久,其实也没找到合适的,后来在附近的图书馆找了一下,哎,居然看得很流畅,就借过来看了,很好,非常满意。当然,推荐大家可以在一些网络的视频课程上找。这里我也不推荐了。我跟大家分享这本书吧。
Cocos2dx 3移动游戏编程((韩)印孜健)
这本不一定是好书,但是,我跟着它很顺畅地入了门,给我很多的帮助。希望对你有用。
我大概用了两个小时左右,跟着它,弄了一个这样的界面:
本来还想整一些字、音乐......急于移植的我,还是算了,想赶紧把它整到手机上去。
其实说琰也简单,但是当不知道流程的时候,还是会抓狂一会会的。先试一下win32(在你生成的新工程根目录下运行cocos 命令)的。
结果很顺畅,生成目录如下:
打开demo.exe,结果跟VS运行的没有差别。
同样在这个目录之下编译android studio版本,这个就有些曲折咯。
第一个问题是:Could not find com.android.tools.build:gradle:3.0.0(类似这样),遇到这个问题,
Open your Project level build.gradle
Section .
You should add maven { url 'https://maven.google.com' }
.
还真的继续跑下去了。但是又遇见了问题,我的直觉是又是哪个依赖包出了问题,网速慢,之类的,下载不到,直觉告诉我,重新运行一次,结果,还真的编译成功了。
当然,这里生成apk失败了,接着,在之前的Android Strudio工程下,重新用gradle运行一下,之前让大家提前配好也是因为要在这里使用的原因。同样,这里也花了点时间,在这个过程会有点久,不要以为出错了,由着它编译一段时间。画面有点奇怪,但是也ok了,大功告成。
这篇文章可能会有一种流水帐的感觉,很多细节我都不提,因为面面俱到,篇幅会很长,我希望能给大家入门,对cocos开发Android的过程中不要有理解出入太多的地方,然后能给大家一个开发的脉络。希望能够给大家入门一些帮助。
当然,在这方面,我也是个新手,希望我们可以多多交流,共!!!