cocos2d-x 语法学习

在初始化成功 才会返回数据 否则返回NULL

/创建一个渲染目标纹理。  
    CCRenderTexture *pRet = new CCRenderTexture();  
    //调用相应的初始化函数。  
    if(pRet && pRet->initWithWidthAndHeight(w, h, eFormat))  
    {  
        //成功后交由内存管理器进行管理。  
        pRet->autorelease();  
        return pRet;  
    }  
    //不成功则释放置空返回NULL。  
    CC_SAFE_DELETE(pRet);  
    return NULL;  
  字符串 追加
    char png[20];  
    sprintf(png, "image-%d.png", counter);  
 

析构函数的使用

 

//析构  
CCRenderTexture::~CCRenderTexture()  
{  
    //释放FBO  
    glDeleteFramebuffers(1, &m_uFBO);  
    //释放深度缓冲  
    if (m_uDepthRenderBufffer)  
    {  
        glDeleteRenderbuffers(1, &m_uDepthRenderBufffer);  
    }  
    //释放  
    CC_SAFE_DELETE(m_pUITextureImage);  
    //移除监听响应函数。  
    CCNotificationCenter::sharedNotificationCenter()->removeObserver(this, EVENT_COME_TO_BACKGROUND);  //使用到了监听  释放监听
}  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      

//析构  
RenderTextureSave::~RenderTextureSave()  
{  
    //对占用的目标纹得和刷子精灵的引用计数减一。  
    m_pBrush->release();  
    m_pTarget->release();  
    //纹理管理器释放不用的纹理。  
    CCTextureCache::sharedTextureCache()->removeUnusedTextures();  
}  
 

//如果游戏有很多场景,在切换场景的时候可以把前一个场景的内存全部释放,防止总内存过高.

 

CCTextureCache::sharedTextureCache()->removeAllTextures();// 释放到目前为止所有加载的图片

 

CCTextureCache::sharedTextureCache()->removeUnusedTextures();//将引用计数为1的图片释放掉

CCTextureCache::sharedTextureCache()->removeTexture(); //单独释放某个图片

 

CCSpriteFrameCache 与 CCTextureCache //释放的方法差不多。

 

posted on 2013-04-14 10:35  jack_yan  阅读(367)  评论(0)    收藏  举报