我正在创建一个绘图应用程序,我需要将最终结果保存为png图像。但我需要能够通过进一步的绘图来编辑图像。
这是一个帧缓冲对象吗?渲染到屏幕外纹理?
答案 0 :(得分:0)
这取决于您之后如何编辑图像。您的问题分为两部分: 1)将图像保存为png 2)绘制后编辑图像
1)将帧缓冲图形保存为png很简单。这里有类似的问题,OpenGL ES 1.x(http://stackoverflow.com/questions/5062978/how-can-i-dump-opengl-renderbuffer-to-png-or-jpg-image)应该是工作的良好基础。
2)这取决于您想要多久编辑图像。如果您在整个程序中连续编辑图像,则将所有内容保存在帧缓冲区中,并在编辑完成后仅写入png。如果您需要稍后在图像上绘制(例如,当您重新打开程序时),可以保存为png,然后在要编辑图像时将png作为新帧缓冲区的纹理加载再次。当您绘制到这个新的帧缓冲区时,您将在纹理上绘制(这是您之前的图像)。