2013-01-05 70 views
0

我正在创建绘图应用程序,我需要将最终结果保存为png图像。但是,我需要能够在进一步绘制的情况下编辑图像。OpenGLES 2.0纹理渲染

framebuffer对象是这里的方式吗?渲染到屏幕外的纹理?

回答

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作为新帧缓冲区的纹理加载再次。当您绘制到这个新的帧缓冲区时,您将在纹理的顶部绘图(这是您的上一张图像)。