cocos2dx屏幕截图

屏幕截图
void FirstScene::EndSceneFun()
{
CocosDenshion::SimpleAudioEngine::getInstance()->playEffect("res/sfx_hit.wav");
//得到窗口的大小  
CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();  
CCRenderTexture *renderTexture = CCRenderTexture::create(visibleSize.width,visibleSize.height); 


 


//遍历当前类的所有子节点信息,画入renderTexture中。  
//这里类似截图。  
renderTexture->begin();   
this->getParent()->visit();  
renderTexture->end();  
int intkey = UserDefault::getInstance()->getIntegerForKey("key"); 
//UserDefault::getInstance()->setIntegerForKey("key", m_score); 

//将游戏界面暂停,压入场景堆栈。并切换到GamePause界面  
CCDirector::sharedDirector()->pushScene(EndScene::createScene(renderTexture)); 
}




Scene* EndScene::createScene(CCRenderTexture* sqr,int score) {
    CCScene *scene = CCScene::create();  
    EndScene *layer = EndScene::create();  
        scene->addChild(layer,1);//把游戏层放上面,我们还要在这上面放按钮  
  
  
    //增加部分:使用Game界面中截图的sqr纹理图片创建Sprite  
    //并将Sprite添加到GamePause场景层中  
    //得到窗口的大小  
    CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();  
    CCSprite *back_spr = CCSprite::createWithTexture(sqr->getSprite()->getTexture());    
    back_spr->setPosition(ccp(visibleSize.width/2,visibleSize.height/2)); //放置位置,这个相对于中心位置。  
    back_spr->setFlipY(true);            //翻转,因为UI坐标和OpenGL坐标不同  
back_spr->setColor(Color3B(192,192,192)); //图片颜色变灰色  
    scene->addChild(back_spr); 
    return scene;  

猜你喜欢

转载自blog.csdn.net/u014206831/article/details/77479845