原创作品,转载请标明:http://www.jb51.cc/article/p-bomolgql-ep.html
官方TestCpp有这个demo了,这里还是把它单独拖出来写一下,游戏推广的一个很重要组成就是玩家分享,所以游戏截图就起到很大作用了。截图功能通过CCRenderTexture实现。
1.CCRenderTexture
CCRenderTexture是一个通用渲染对象,可以通过构建一个CCRenderTexture对象,进而把要渲染的东西填充进去,在渲染开始前调用call函数,调用cocos的场景的visit函数对其进行渲染,渲染结束后调用end函数。CCRenderTexture继承于CCNode,所以可以简单地把渲染纹理添加到你的场景中,就像处理其它cocos中的节点一样,当然它还提供了保存功能,可以把渲染纹理保存为PNG或JPG格式。
2.API
- //创建和初始化函数
- staticCCRenderTexture*create(intw,inth,CCTexture2DPixelFormateFormat,GLuintuDepthStencilFormat);
- inth);
- boolinitWithWidthAndHeight(
- //开始获取
- voidbegin();
- //开始渲染时清除之前渲染的内容
- voidbeginWithClear(floatr,87); font-weight:bold; background-color:inherit">floatg,87); font-weight:bold; background-color:inherit">floatb,87); font-weight:bold; background-color:inherit">floata);
- floata,87); font-weight:bold; background-color:inherit">floatdepthValue);
- floatdepthValue,87); font-weight:bold; background-color:inherit">intstencilValue);
- //结束获取
- voidend();
- //清除纹理
- voidclear(voidclearDepth(voidclearStencil(//保存纹理为图片文件,可以选择JPG/PNG格式,默认是JPEG格式,成功返回真
- boolsaveToFile(constchar*szFilePath);
- char*name,tCCImageFormatformat);
3.示例
copy