RenderTexture保存大于当前屏幕的图片

     昨天遇到一个用RenderTexture保存图片的问题,其实直接调用时可以保存当前屏幕大小的图片,但是当图片太大,比如5000*5000的时候,保存出来的图片只有一个角。然后就用到了这个方式来保存。

     lua代码:

     local w=5000

     local h=5000

     local render=cc.RenderTexture:create(w, h, cc.TEXTURE2_D_PIXEL_FORMAT_RGB_A8888)

     --设置当前视口大小

     local gl=cc.Director:getInstance():getOpenGLView()
     gl:setFrameSize(w,h)
     render:begin()
     self.pos:visit()
     render:endToLua()
     render:saveToFile("aaa.jpg",kCCImageFormatJPEG)

     --恢复视口

     gl:setFrameSize(CC_DESIGN_RESOLUTION.width,CC_DESIGN_RESOLUTION.height)


如果不用这种方式,渲染图片的容器必须在屏幕的中心,熏染与中心点有关


你可能感兴趣的:(RenderTexture保存大于当前屏幕的图片)