关闭

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

标签: cocos2dx lua
224人阅读 评论(0) 收藏 举报

     昨天遇到一个用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)


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


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:603次
    • 积分:27
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条
    文章存档