0是有效的OpenGL纹理ID吗?

时间:2009-07-10 09:21:01

标签: opengl

glGenTextures(1, &textureid);

假设纹理是成功创建的, textureid 是否为0?

4 个答案:

答案 0 :(得分:33)

manual page for glGenTextures说明了glIsTexture;后者将(根据)总是返回GL_FALSE纹理名称为0.因此,0不能是有效的纹理名称。

答案 1 :(得分:11)

来自OpenGL Spec 3.1: 第157页:

  

如果删除了一个纹理对象,就好像所有绑定到它的纹理单元一样   纹理对象反弹到纹理对象零。

在我看来,零命名纹理是一个特殊的

答案 2 :(得分:2)

在OpenGL中进行错误检查的正确方法通常是调用glGetError。然后,您可以检查glGenTextures描述中列出的两个错误条件。如前所述,您可以调用glIsTexture来检查给定纹理是否有效。

答案 3 :(得分:0)

绝对不是。