加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Cocos2dx基础之CCRenderTexture截图保存并使用的实现

发布时间:2020-12-14 19:45:06 所属栏目:百科 来源:网络整理
导读:1.CCRenderTexture CCRenderTexture是一个通用渲染对象,可以通过构建一个CCRenderTexture对象,进而把要渲染的东西填充进去,在渲染开始前 调用 call函数, 调用 cocos的场景的 visit函数 对其进行 渲染,渲染结束后调用end函数。CCRenderTexture继承于CCNo

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); }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读