Cocos2d-x 2.x to 3.x Note
Cocos2d-x 2.x 到 3.x 筆記
一、命名規範跳脫原本 Cocos2d 的 Object-C 規範,更接近 C++ 規範,像是去除 CC 前贅字。
Ex:
CCSize => Size
CCDirector => Director
CCSprite => Sprite
CCRectMake => Rect
ccp => Point
二、命名的變更除了類別之後,有些函式也有改變,像是 sharedXXX() 改為 getInstance()。
Ex:
sharedDirector() => getInstance()
三、儘可能使用 std lib,而非自己的函式,
Ex:
CallBackFunction 使用
2.x 寫法:
CCFiniteTimeAction* actionMoveDone =
CCCallFuncN::create( this, callfuncN_selector(HelloWorld::spriteMoveFinished));
3.0 寫法:
FiniteTimeAction* actionMoveDone =
CallFuncN::create(std::bind(&HelloWorld::spriteMoveFinished, this, std::placeholders::_1));
四、CCLabelTTF, CCLabelBMFont and CCLabelAtlas 改用 Label 取代
參考資料:
EventDispatcher Mechanism
http://www.cocos2d-x.org/docs/manual/framework/native/input/event-dispatcher/en
cocos2d-x 3.0 beta: the new Vector class
http://dev.bunnyhero.org/2014/01/cocos2d-x-30-beta-the-new-vector-class/
Improved Label in Cocos2d-x-3.0
http://www.cocos2d-x.org/docs/manual/framework/native/v3/label/en
沒有留言:
張貼留言