cocos2dx interface


1. 2dx内存管理

1.引用计数:retain +1 、release -1 当计数器为0时候执行 delete 对象操作

2.create:后放到动态池 autorelease ,如果之后不执行retain( addChild() 自动执行retain) ,每一帧更新检查到此对象没有被retain回释放掉。

3.精灵new:

  1. CCSprite* CCSprite::create(const char *pszFileName)    
  2. {    
  3.     CCSprite *pobSprite = new CCSprite();    
  4.     if (pobSprite && pobSprite->initWithFile(pszFileName))    
  5.     {    
  6.         pobSprite->autorelease();    
  7.         return pobSprite;    
  8.     }    
  9.     CC_SAFE_DELETE(pobSprite);    
  10.     return NULL;    
  11. }

4.关系:release retain 是建立在autorelease之上,没有执行autorelease,执行retain和release是没有任何意义的。

对于使用autorelease的对象,不必管它,每帧结束后会自动释放。

retain是在指针传递和赋值时使用的,他的含义是表示拥有。这经常用在指针赋值上。


引用计数器,每个具体用途(retain autorelease),关系,创建(new create)


2. 2dx游戏存储

CCUserDefault和SQList


3. 游戏优化

(1) 内存

1.程序

三个类:CCSpriteBatchNode、CCSpriteFrameCache、CCTextureCache

2.美术


(2) 硬盘

(3)美术


4.常用工具


5.scene  layer  node  sprite



6.动作CCAction CCActionMessage


7.屏幕适配



8.最外面的CCDirector CCEGLView CCEGLViewProtocol


9.触发事件


10.不同平台

Android


IOS







你可能感兴趣的:(cocos2dx interface)