Cocos2d-x:2.x与1.x的版本差别集锦

原文链接:http://blog.csdn.net/m_leonwang/article/details/17651197


1.版本1.x获取 CCTouchDispatcher方法是CCTouchDispatcher::sharedDispatcher(),2.x中被合并到CCDirector中,需要用CCDirector::sharedDirector()->getTouchDispatcher()来获取;

例如,1.x注册触屏事件监听方法:CCTouchDispatcher::sharedDispatcher()->addTargetedDelegate
而2.x中要用CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate


2.在1.x中创建层的宏是LAYER_CREATE_FUNC,2.x中改用CREATE_FUNC;版本1.x中创建节点的宏是LAYER_NODE_FUNC,在2.x中用NODE_FUNC。


3.版本2.x用CCArray替换了之前的CCCCMutableArray,1.x中创建数组方法是CCMutableArray<AstarItem*> open = new CCMutableArray<AstarItem*>();

在2.x中方法为CCArray*array = CCArray::create()。


4.CCFileUtils函数使用方法变更,以获取文件路径为例:1.x版本的使用const char* fullpath = cocos2d::CCFileUtils::fullPathFromRelativePath(patha.c_str());而2.x版本的使用const char* fullpath = cocos2d::CCFileUtils::sharedFileUtils()->fullPathFromRelativePath(patha.c_str())。


5.很多对象的创建方法都改成统一的函数命名:create,例如精灵的创建方法在1.x中是:CCSprite *sp = CCSprite::spriteWithFile("himi.png");在2.x中改为: CCSprite *sp = CCSprite::create("himi.png");序列动画创建方法由CCSequence::actions改成CCSequence::create。


6.粒子相关:

在1.x粒子创建和设置自动释放设置
CCParticleSystem *pParticle=  CCParticleSystem::particleWithFile("test.plist");
pParticle->setIsAutoRemoveOnFinish(true);
在2.x中改成     
CCParticleSystem *pParticle=  CCParticleSystemQuad::create("test.plist");
pParticle->setAutoRemoveOnFinish(true);


7.在2.x中去除了CCFileData 类:

原先1.x的CCFileData的使用:     
cocos2d::CCFileData fileDataClip(const char *pszFileName, const char *pszMode);
2.x中直接使用如下函数代替:
CCFileUtils::sharedFileUtils()->getFileData(const char *pszFileName, const char *pszMode, unsigned long *pSize)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值