Cocos2dx 3.0 过渡篇(一) 初体验

来源:互联网 发布:造梦西游刷点卷软件 编辑:程序博客网 时间:2024/04/30 14:25
       本人刚开始学习cocos2dx,在网上找到这篇好文章,个人觉得很适合新手,所以转载并分享!
原创地址:http://blog.csdn.net/start530/article/details/18052953


1、以CC开头的类从此去掉CC,如:
| v2.1       | v3.0     || CCSprite   | Sprite   || CCNode     | Node     || CCDirector | Director || etc...                |

举个例子,创建一个精灵的方式:
[cpp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. v2.0   
  2. CCSprite* sp = CCSprite::create();  
  3.   
  4.   
  5. v3.0  
  6. auto sp = Sprite::create();  


2、clone() 替代 copy(), 这个我用的不多,所以也就不多交代了;


3、Director的单例换成getInstance() 和 destroyInstance();
| v2.1                          | v3.0                        || CCDirector->sharedDirector()  | Director->getInstance()     || CCDirector->endDirector()     | Director->destroyInstance() || etc...                                                      |
                                             |
4、新的触摸机制,先贴一段代码给大家看看,可能是下一篇或者下下篇我会详细讲下新的触摸机制的。
[cpp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. auto sprite = Sprite::create("file.png");  
  2. ...  
  3. auto listener = EventListenerTouchOneByOne::create();  
  4. listener->setSwallowTouch(true);  
  5. listener->onTouchBegan     = [](Touch* touch, Event* event) { do_some_thing();  return true;  };  
  6. listener->onTouchMoved     = [](Touch* touch, Event* event) { do_some_thing();  };  
  7. listener->onTouchEnded     = [](Touch* touch, Event* event) { do_some_thing();  };  
  8. listener->onTouchCancelled = [](Touch* touch, Event* event) { do_some_thing();  };  
  9. // The priority of the touch listener is based on the draw order of sprite  
  10. EventDispatcher::getInstance()->addEventListenerWithSceneGraphPriority(listener, sprite);  
  11. // Or the priority of the touch listener is a fixed value  
  12. EventDispatcher::getInstance()->addEventListenerWithFixedPriority(listener, 100); // 100 is a fixed value  

5、还有一些杂七杂八的东西,本人理解的不透,也就不发出来献丑了,最后将CCType.h 里的一些变动贴出来,让我们愉快的结束这篇博文。
| v2.1 struct names | v3.0 struct names || ccColor3B         | Color3B || ccColor4B         | Color4B || ccColor4F         | Color4F || ccVertex2F        | Vertex2F || ccVertex3F        | Vertex3F || ccTex2F           | Tex2F || ccPointSprite     | PointSprite || ccQuad2           | Quad2 || ccQuad3           | Quad3 || ccV2F_C4B_T2F     | V2F_C4B_T2F || ccV2F_C4F_T2F     | V2F_C4F_T2F || ccV3F_C4B_T2F     | V3F_C4B_T2F || ccV2F_C4B_T2F_Triangle | V2F_C4B_T2F_Triangle || ccV2F_C4B_T2F_Quad | V2F_C4B_T2F_Quad || ccV3F_C4B_T2F_Quad | V3F_C4B_T2F_Quad || ccV2F_C4F_T2F_Quad | V2F_C4F_T2F_Quad || ccBlendFunc       | BlendFunc || ccT2F_Quad        | T2F_Quad || ccAnimationFrameData | AnimationFrameData |

一些全局的定义

// in v2.1ccColor3B color3B = ccc3(0, 0, 0);ccc3BEqual(color3B, ccc3(1, 1, 1));ccColor4B color4B = ccc4(0, 0, 0, 0);ccColor4F color4F = ccc4f(0, 0, 0, 0);color4F = ccc4FFromccc3B(color3B);color4F = ccc4FFromccc4B(color4B);ccc4FEqual(color4F, ccc4F(1, 1, 1, 1));color4B = ccc4BFromccc4F(color4F);color3B = ccWHITE;// in v3.0Color3B color3B = Color3B(0, 0, 0);color3B.equals(Color3B(1, 1, 1));Color4B color4B = Color4B(0, 0, 0, 0);Color4F color4F = Color4F(0, 0, 0, 0);color4F = Color4F(color3B);color4F = Color4F(color4B);color4F.equals(Color4F(1, 1, 1, 1));color4B = Color4B(color4F);color3B = Color3B::WHITE;

继续...

| v2.1 names    | v3.0 names || ccp           | Point || ccpNeg        | Point::- || ccpAdd        | Point::+ || ccpSub        | Point::- || ccpMult       | Point::* || ccpMidpoint   | Point::getMidpoint || ccpDot        | Point::dot || ccpCrosss     | Point::cross || ccpPerp       | Point::getPerp || ccpRPerp      | Point::getRPerp || ccpProject    | Point::project || ccpRotate     | Point::rotate || ccpUnrotate   | Point::unrotate || ccpLengthSQ   | Point::getLengthSq() || ccpDistanceSQ | Point::getDistanceSq || ccpLength     | Point::getLength || ccpDistance   | Point::getDistance || ccpNormalize  | Point::normalize || ccpForAngle   | Point::forAngle || ccpToAngle    | Point::getAngle || ccpClamp      | Point::getClampPoint || ccpFromSize   | Point::Point || ccpCompOp     | Point::compOp || ccpLerp       | Point::lerp || ccpFuzzyEqual | Point::fuzzyEqual || ccpCompMult   | Point::Point || ccpAngleSigned | Point::getAngle || ccpAngle      | Point::getAngle || ccpRotateByAngle | Point::rotateByAngle || ccpLineInersect | Point::isLineIntersect || ccpSegmentIntersect | Point::isSegmentIntersect || ccpIntersectPoint | Point::getIntersectPoint || CCPointMake   | Point::Point || CCSizeMake    | Size::Size || CCRectMake    | Rect::Rect || PointZero     | Point::ZERO || SizeZero      | Size::ZERO || RectZero      | Rect::ZERO || TiledGrid3DAction::tile | TiledGrid3DAction::getTile || TiledGrid3DAction::originalTile | TiledGrid3DAction::getOriginalTile || TiledGrid3D::tile | TiledGrid3D::getTile || TiledGrid3D::originalTile | TiledGrid3D::getOriginalTile || Grid3DAction::vertex | Grid3DAction::getVertex || Grid3DAction::originalVertex | Grid3DAction::getOriginalVertex || Grid3D::vertex | Grid3D::getVertex || Grid3D::originalVertex | Grid3D::getOriginalVertex || Configuration::sharedConfiguration | Configuration::getInstance || Configuration::purgeConfiguration | Configuration::destroyInstance() || Director::sharedDirector() | Director::getInstance() || FileUtils::sharedFileUtils | FileUtils::getInstance || FileUtils::purgeFileUtils | FileUtils::destroyInstance || EGLView::sharedOpenGLView | EGLView::getInstance || ShaderCache::sharedShaderCache | ShaderCache::getInstance || ShaderCache::purgeSharedShaderCache | ShaderCache::destroyInstance || AnimationCache::sharedAnimationCache | AnimationCache::getInstance || AnimationCache::purgeSharedAnimationCache | AnimationCache::destroyInstance || SpriteFrameCache::sharedSpriteFrameCache | SpriteFrameCache::getInstance || SpriteFrameCache:: purgeSharedSpriteFrameCache | SpriteFrameCache::destroyInstance || NotificationCenter::sharedNotificationCenter | NotificationCenter::getInstance || NotificationCenter:: purgeNotificationCenter | NotificationCenter::destroyInstance || Profiler::sharedProfiler | Profiler::getInstance || UserDefault::sharedUserDefault | UserDefault::getInstance || UserDefault::purgeSharedUserDefault | UserDefault::destroyInstance || Application::sharedApplication | Application::getInstance || ccc3()        | Color3B() || ccc3BEqual()  | Color3B::equals() || ccc4()        | Color4B() || ccc4FFromccc3B() | Color4F() || ccc4f()       | Color4F() || ccc4FFromccc4B() | Color4F() || ccc4BFromccc4F() | Color4B() || ccc4FEqual()  | Color4F::equals() || ccWHITE       | Color3B::WHITE || ccYELLOW      | Color3B::YELLOW || ccBLUE        | Color3B::BLUE || ccGREEN       | Color3B::GREEN || ccRED         | Color3B::RED || ccMAGENTA     | Color3B::MAGENTA || ccBLACK       | Color3B::BLACK || ccORANGE      | Color3B::ORANGE || ccGRAY        | Color3B::GRAY || kBlendFuncDisable | BlendFunc::BLEND_FUNC_DISABLE |

0 0
原创粉丝点击