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