检查纹理的名称是否有效

时间:2011-07-27 21:47:43

标签: iphone ios opengl-es

有没有办法检查用glGenTextures设置的opengl纹理名称是否仍然有与之关联的有效纹理?在文档中我看到有一个函数glIsTexture,但是如果纹理被删除,这个函数是否返回GL_FALSE还不清楚。

1 个答案:

答案 0 :(得分:2)

这很复杂。

如果您在纹理名称上调用了glDeleteTextures,那么该名称不再是纹理... 除非稍后调用glGenTextures再次返回该名称。一旦删除纹理,OpenGL就可以在以后随意使用该名称。这就像删除一个指针;以后的内存分配可能会再次返回该指针。

所有glIsTexture可以做的是测试纹理当前不是纹理。它可能会在以后再次变成纹理。