Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何在OpenGL 2.x中删除纹理?_Objective C_Memory_Opengl Es_Opengl Es 2.0_Textures - Fatal编程技术网

Objective c 如何在OpenGL 2.x中删除纹理?

Objective c 如何在OpenGL 2.x中删除纹理?,objective-c,memory,opengl-es,opengl-es-2.0,textures,Objective C,Memory,Opengl Es,Opengl Es 2.0,Textures,我随后使用OpenGL创建了一个基本游戏,在对其进行分析之后,发现即使移除了精灵,纹理也不会被释放,从而导致内存泄漏。通过在Sprite类中创建缓存,我很容易解决了这个问题,但我想知道如何删除纹理本身以供将来参考。它加载了GLKTextureLoader我以前尝试过使用glDeleteTextures,但是当我给它参数(1,&self.textureInfo.name)时,它给了我一个错误。这是可行的,但是为什么必须首先使GLuint index变量起作用呢?因为“name”是属性。检索该值时,

我随后使用OpenGL创建了一个基本游戏,在对其进行分析之后,发现即使移除了精灵,纹理也不会被释放,从而导致内存泄漏。通过在Sprite类中创建缓存,我很容易解决了这个问题,但我想知道如何删除纹理本身以供将来参考。它加载了
GLKTextureLoader

我以前尝试过使用
glDeleteTextures
,但是当我给它参数
(1,&self.textureInfo.name)
时,它给了我一个错误。这是可行的,但是为什么必须首先使
GLuint index
变量起作用呢?因为“name”是属性。检索该值时,它可能已作为函数实现。glDeleteTexture(1,&getName())错误。
GLuint index = self.textureInfo.name;
glDeleteTextures(1, &index);