1.CCRenderTexture
CCRenderTexture是一个通用渲染对象,可以通过构建一个CCRenderTexture对象,进而把要渲染的东西填充进去,在渲染开始前调用call函数,调用cocos的场景的visit函数对其进行渲染,渲染结束后调用end函数。CCRenderTexture继承于CCNode,所以可以简单地把渲染纹理添加到你的场景中,就像处理其它cocos中的节点一样,当然它还提供了保存功能,可以把渲染纹理保存为PNG或JPG格式。
void GameLayer::CatchScreen()
{CCSize size = CCDirector::sharedDirector()->getWinSize();
CCRenderTexture* screen = CCRenderTexture::create(size.width,size.height);
CCScene* temp = CCDirector::sharedDirector()->getRunningScene();
screen->begin();
temp->visit();
screen->end();
//保存截图
if(screen->saveToFile("cocos2d-x-screenshot.png",kCCImageFormatPNG)){
CCMessageBox("Print Screen OK!","Hit");
}
//使用截图
CCSprite* pic = CCSprite::createWithTexture(screen->getSprite()->getTexture()); pic->setPosition(ccp(100,100)); pic->setScale(0.5); addChild(pic,100); CC_SAFE_DELETE(screen); }版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。