申明:不推荐用cocos2d-x是我现在的看法,同时为了保险起见也限定了版本号为2.1.1,其实我想表达的观点是,不要使用cocos2d-x!!
1. 从官网下载cocos2d-x的最新版本2.1.1,结果里面的LuaCocos2d.cpp根本就是旧的,新的api在lua里根本不能用,tolua++下的一一堆pkg文件也都是旧的,想要自己生成LuaCocos2d.cpp还要重写pkg文件。JS Binding不知道什么情况,不管怎么样,这样的包都能做为stable release发出来,我对他们的QA系统严重怀疑。
2. 一些实现让人很是疑惑,例如对retina的支持,google了一下说是默认就开始了retina的支持,这个倒是不假,问题是CCDirector里的setContentScaleFactor,getContentScaleFactor现在拿来干什么用呢,如果我setContentScaleFactor(2.0)那么得到的CCSprite大小会变成原来的0.5,这显然不是我想要的。如果setContentScaleFactor(1.0)/*相当于什么都不做*/,那么CC_CONTENT_SCALE_FACTOR()得到的结果也会是1.0,这也显然不是我希望的结果,而且注释上写的是On iPhone it returns 2 if RetinaDisplay is On啊,这不明显坑爹嘛??
3. 妄图用c++来实现objc,可能是移植与cocos2d-iphone的原因, c++代码里充满了objc的味道,用多重继承来模拟Protocol,对于从objc->c++的同学,徒增学习成本。
4. extension里的代码质量不高或者说低下,CCTableView里bug一堆,Lua Binding也没有,HttpRequest居然还依赖于CCDirector的Scheduler,就不能抽象一个Timer用不同OS的实现吗?
另外,我觉得垮平台的游戏引擎,不能考虑生成OpenGL的lua binding之后,用lua来实现一个吗?这样不是比cocos2d-x更好的跨平台方案?以上只是个人的一些发散,欢迎讨论.
1. 从官网下载cocos2d-x的最新版本2.1.1,结果里面的LuaCocos2d.cpp根本就是旧的,新的api在lua里根本不能用,tolua++下的一一堆pkg文件也都是旧的,想要自己生成LuaCocos2d.cpp还要重写pkg文件。JS Binding不知道什么情况,不管怎么样,这样的包都能做为stable release发出来,我对他们的QA系统严重怀疑。
2. 一些实现让人很是疑惑,例如对retina的支持,google了一下说是默认就开始了retina的支持,这个倒是不假,问题是CCDirector里的setContentScaleFactor,getContentScaleFactor现在拿来干什么用呢,如果我setContentScaleFactor(2.0)那么得到的CCSprite大小会变成原来的0.5,这显然不是我想要的。如果setContentScaleFactor(1.0)/*相当于什么都不做*/,那么CC_CONTENT_SCALE_FACTOR()得到的结果也会是1.0,这也显然不是我希望的结果,而且注释上写的是On iPhone it returns 2 if RetinaDisplay is On啊,这不明显坑爹嘛??
3. 妄图用c++来实现objc,可能是移植与cocos2d-iphone的原因, c++代码里充满了objc的味道,用多重继承来模拟Protocol,对于从objc->c++的同学,徒增学习成本。
4. extension里的代码质量不高或者说低下,CCTableView里bug一堆,Lua Binding也没有,HttpRequest居然还依赖于CCDirector的Scheduler,就不能抽象一个Timer用不同OS的实现吗?
另外,我觉得垮平台的游戏引擎,不能考虑生成OpenGL的lua binding之后,用lua来实现一个吗?这样不是比cocos2d-x更好的跨平台方案?以上只是个人的一些发散,欢迎讨论.