0

假设我在opengl中做了五次不同纹理的笔画。现在我想清除所有我想保留的四个纹理,因为它只剩下一个纹理。我该怎么做。当我使用 glClear() 时,它会删除所有内容。我不能使用 glScissor,因为纹理位置可以相同。我怎样才能做到这一点。

4

1 回答 1

0

您可以使用以下方法创建精确的纹理:

GLuint index=x;
glGenTextures(1, &index);
glBindTexture(GL_TEXTURE_2D, index);
glTexImage2D...

并删除相同的纹理:

glDeleteTextures(1, &index);

现在,您无需在渲染过程中删除纹理,只需为所需的笔画使用适当的纹理索引即可。使用相同的网格,只是在渲染顶点时改变纹理索引。

于 2012-09-14T13:18:53.527 回答