细讲解cocos2dx(v2.x)与(v1.x)的一些常用函数

来源:互联网 发布:印度朗洞事件 知乎 编辑:程序博客网 时间:2024/05/17 03:20
cocos2dx  v2.0版本颁发一段时间了,那会最新版本是 cocos2d-2.0-rc2-x-2.0.1  ;这段工夫Himi对2.x的更新版也有关注,也尝试运用过,缔造很多地方都有窜改,关于Himi最新项目快到引子的考虑,所以也不有更新引擎到最新。那么昔日开始Himi将接连运用最新v2.x版本的一些东东,同步更新一些屡屡应用的窜改以及值得留神的地方发博文出来与大家共享;

在从前咱们运用cocos2dx  1.x版本中,我们都知道,创设一个CCObject类,都是类名日后::类名去除CC这个轨则来创设与初始化,然则这一条在Cocos2dx  2.x版本就不成了,在cocos2dx  2.x版本中初始化与树立类根蒂但凡 create 症结字开头创立。

起首咱们来看第一个窜改:   CCLayer初始化

自界说Layer,类名:World

.h中:1.x版本Layer函数LAYER_NODE_FUNC(World); 2.x版本Layer函数LAYER_CREATE_FUNC(World);
.cpp中:1.x版本的重写函数: CCScene* World::scene(){    CCScene *scene = CCScene::node();     World *layer = World::node();     scene->addChild(layer);     return scene;} 2.x版本的重写函数: CCScene* World::scene(){    CCScene *scene = CCScene::create();     World *layer = World::create();     scene->addChild(layer);     return scene;}

尔后我们看第二个常用的CCArray的初始化:

1.x版本的CCArray创立: CCArray*array = CCArray::array(); 2.x版本的CCArray构建:  CCArray*array = CCArray::create();

第三个咱们看文件门路相关CCFileUtils函数应用:

1.x版本的使用: const char* fullpath = cocos2d::CCFileUtils::fullPathFromRelativePath(patha.c_str()); 2.x版本的应用:const char* fullpath = cocos2d::CCFileUtils::sharedFileUtils()->fullPathFromRelativePath(patha.c_str());



第四个精灵的创建:  
1.x中精灵的构建: CCSprite *sp = CCSprite::spriteWithFile("himi.png");2.x中精灵的建立: CCSprite *sp = CCSprite::create("himi.png");



第五个注册触屏事宜监听

1.x中注册:CCTouchDispatcher::sharedDispatcher()->addTargetedDelegate(this, 0, false); 2.x中注册:CCDire首席技术官r::sharedDire首席技术官r()->getTouchDispatcher()->addTargetedDelegate(this, 0, false);


第六个粒子关系

1.x粒子成立和设置装备摆设被动拘留配置CCParticleSystem *tempSystem =  CCParticleSystem::particleWithFile("himi.plist");        tempSystem->setIsAutoRemoveOnFinish(true);         2.x粒子构建与设置自动监禁配置        CCParticleSystem *tempSystem =  CCParticleSystemQuad::create("himi.plist");        tempSystem->setAutoRemoveOnFinish(true);



第七个:CCFileData  类去除了:
1.x的CCFileData的使用:      cocos2d::CCFileData fileDataClip(const char *pszFileName, const char *pszMode);  2.x中CCFileData被删除,直接运用以下函数即可经办:CCFileUtils::sharedFileUtils()->getFileData(const char *pszFileName, const char *pszMode, unsigned long *pSize)


第八个Action  行动应用与建树:

1.x行动的建树与应用:this->runAction(CCSequence::actions(                                            CCMoveTo::actionWithDuration(ccpDistance(this->getPosition(), target) / velocity,                                                                         target),                                            CCCallFunc::actionWithTarget(this, callfunc_sele首席技术官r(Player::removeTarget))                                            ,NULL));  2.x的步履竖立与使用:      this->runAction(CCSequence::create(                                           CCMoveTo::create(ccpDistance(this->getPosition(), target) / velocity,                                                            target),                                           CCCallFunc::create(this, callfunc_sele首席技术官r(Player::removeTarget))                                           ,NULL));


确实以上这几个例子比拟有代表性了,其它的一些鉴别我想人人也能找到纷歧定的轨则。那末本篇关于cocos2dx  v2.0版本的差别就秘要到这,后续假设Himi还创造比较重点鉴别的中央也一定会博文分享出来的。

原创粉丝点击