关于导演、场景、图层等等的内容,当属于熟记于心的概念,且网络上大把大把的资料,我写的又没有人家好╮(╯▽╰)╭
第一次接触cocos,第一个游戏复刻,记录下重要的、容易忘记、容易出错的东西;
1、尽量使用replaceScene进行场景切换,节省内存空间。
因为pushScene不会销毁前一个场景的内存空间。
这里需要了解的是关于init()何时调用。让我们看一看CREATE_FUNC()的定义即一目了然:
#define CREATE_FUNC(__TYPE__) \ static __TYPE__* create() \ { \ __TYPE__ *pRet = new(std::nothrow) __TYPE__(); \ if (pRet && pRet->init()) \ { \ pRet->autorelease(); \ return pRet; \ } \ else \ { \ delete pRet; \ pRet = NULL; \ return NULL; \ } \ }
使用单次调度器,实现进入应用启动界面2s后切换到主界面:
this->scheduleOnce(schedule_selector(Splash::jumpToGame),2.0f);
使用切换特效过渡:
Director::getInstance()->replaceScene (TransitionProgressOutIn::create(0.5,scene));
目前还未尝试来回切换(●—●)
2、关于坐标系
cocos的屏幕坐标系原点:屏幕左下角;
label的参考点:label的中心点;
colorBack的参考点:colorBack的左下角;
3、关于编译安卓项目
我使用的是vs2013进行开发。
在cmd中进入项目proj.android目录,python build_native.py 完成后 cocos run -p android,连上手机即可运行。
4、关于音效
win32播放正常,移植到安卓手机无音效。
解决方法:原音效格式为wav,转成mp3就可成功播放。