一套基于Cocos2d-x的Lua快速开发框架
最近半年一直都在研究cocos2d-x的开发,由于自身对Lua的喜好,所以基本从一开始都是使用Lua作为主要开发语言,在开发过程中,也对cocos2d-x有了一定了解,但是说实话cocos2d-x对Lua的支持还是不太友好,基本还是停留在“能”使用Lua开发的阶段,只是使用了tolua++将API都导出来了而已,没有对lua开发者做更进一步的帮助,这样其实并没完全体现Lua的优势。
其实开发初期就听闻有一个“quick cocos2d-x”的项目,也是采用的Lua,顾名思义目的就是为了提高开发者的效率。对这个项目使用了一番,觉得它做的那个模拟器机制是个不错的想法,虽然还有很多bug。对它这个框架的有些核心思想不是太认同,主要是这个框架对cocos2d的源码进行过修改,而不是一个纯粹的lua级框架,这样做势必自己必须要有一个cocos2d-x的分支,这样会带来一个很要命的问题——在cocos2d-x进行功能增加或者bug修复的时候,需要做大量的工作来将他们合并入自己的分支,所以也就没太关心它的架构实现了。(另模拟器提供的重载不是脚本级的,而是重启进程这点也不是很满意)
所以最后还是选择了自己来写一套基于cocos2d-x的纯粹的Lua级的框架,针对开发过程中开发者一般都会遇到需要解决的问题做了框架级的封装,使我们可以将更多的心思花在项目的逻辑上,而不用关心太多cocos2d的细节。(比如屏幕的拖拽,缩放,UI资源的加载管理这些等等)
目前这个框架也在公司的项目里开始运用,表现的还不错,而且也在不断的完善中,但是要把它使用起来还是要花上几分钟来配置,所以今天花了点时间写了个python脚本来做配置。另这个项目本身就是寄放在github上的开源项目(https://github.com/yestein/cocos-lua),打算最近花些时间对这个框架写些说明文档将其正式开源出来,也希望它可以接受更多的检验,成长的更好。未来我也会在这里专门开辟一个专栏来对其进行说明。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!