glReadPixels - 具有全局变量的malloc

时间:2012-05-04 01:57:26

标签: ios memory-management opengl-es malloc

我偶然发现了一个相当棘手的问题。

在iOS的openGL应用程序的上下文中,我试图调用glReadPixels。 因此,在开头创建/分配了一个全局缓冲区变量。 我试图在该缓冲区上使用glReadPixel-Function,但它没有成功。我没有得到任何新的图片,只是废话。

所以我的问题:为什么我需要在我分配的缓冲区空间上使用free(),当我想在最终释放它之前多次使用该内存的位置?

参见例如:

int bytes = width*height*3; //Color space is RGB
if(buffer == null)
    buffer = (GLubyte *)malloc(bytes);

glReadPixels(0, 0, width, height, GL_RGB, GL_UNSIGNED_BYTE, buffer);
free(buffer);

编辑:我替换了免费(字节);免费(缓冲);

0 个答案:

没有答案