cocos2d-x截图功能clippingnode它也可用于——白费
2015-07-03 16:14
417 查看
许多其他精彩分享:http://blog.csdn.net/u010229677
3.1版本号:
在Director数:
调用的话:
3.2版本号:
3.1版本号:
在Director数:
bool Director::saveScreenshot(const std::string& fileName,const std::function<void(const std::string&)>& callback) { Image::Format format; //进行后缀推断 if(std::string::npos != fileName.find_last_of(".")){ auto extension = fileName.substr(fileName.find_last_of("."),fileName.length()); if (!extension.compare(".png")) { format = Image::Format::PNG; } else if(!extension.compare(".jpg")) { format = Image::Format::JPG; } else{ CCLOG("cocos2d: the image can only be saved as JPG or PNG format"); return false; } } else { CCLOG("cocos2d: the image can only be saved as JPG or PNG format"); return false ; } //获取屏幕尺寸,初始化一个空的渲染纹理对象 auto renderTexture = RenderTexture::create(getWinSize().width, getWinSize().height, Texture2D::PixelFormat::RGBA8888, GL_DEPTH24_STENCIL8); //最后一个參数省略的话。对clippingnode截图是无效的 //清空并開始获取 renderTexture->beginWithClear(0.0f, 0.0f, 0.0f, 0.0f); //遍历场景节点对象,填充纹理到RenderTexture中 getRunningScene()->visit(); //结束获取 renderTexture->end(); //保存文件 renderTexture->saveToFile(fileName , format); //使用schedule在下一帧中调用callback函数 auto fullPath = FileUtils::getInstance()->getWritablePath() + fileName; auto scheduleCallback = [&,fullPath,callback](float dt){ callback(fullPath); }; return true; }
调用的话:
Director::getInstance()->saveScreenshot("sss.png", nullptr);
3.2版本号:
#include "base/ccUtils.h" utils::captureScreen([](){log("ok");}, "dd.png");
相关文章推荐
- cocos2dx[3.2](11)——新回调函数std::bind
- android cocos2d demo
- cocos2dx 几个精灵按照顺序播放动画解决方法
- Cocos2d-x 3.2编译Android程序错误的解决方案
- cocos2dx 3.5 资源文件加密
- quick-cocos2dx 3.3 c++绑定到Lua
- cocos2dx3.6 实现带光标的输入框(二);光标可移动
- Cocos2d-x-3.6学习(二)----全平台配置
- cocos2d-x v3.3开发环境配置
- cocos2d-x v3.3开发环境配置
- 14.2Cocos2d-x 中的粒子系统(笔记);14.2.1 ParticleBatchNode;
- cocos2d-x3.2 scrollView
- cocos2dx对于强大的RichText控制
- 在cocos2d-x中实现真随机数
- Cocos2D-x工程目录介绍
- cocos2d-x2.2.5 + cocos2d-x3.2鸟跳便宜源代码“开源”
- cocos2d 0.99 与cocos2d v2.1 restoreOriginalFrame 播放动画使用重置默认桢的区别
- 【转载】cocos2d-x tile map瓦片地图的黑线及地图抖动解决方案
- cocos2d-x坐标系
- cocos2d-x开发 - mac环境搭建