在OpenGL中,是否可以仅根据纹理ID从先前创建的纹理中检索像素数组?
答案 0 :(得分:2)
是。
再次绑定它并致电glGetTexImage()
如果您不想弄乱当前绑定的纹理,可以将其绑定到不同的纹理单元。纹理单元是保持绑定纹理的容器。你可以将一个纹理绑定到每个纹理单元。 OpenGL 2.1要求实现具有至少2个纹理单元。您经常使用的默认纹理单位是单位0.以切换当前纹理单位调用glActiveTexture()
:
glActiveTexture(GL_TEXTURE1);
glBindTexture(texid);
glGetTexImage(...);
glActiveTexture(GL_TEXTURE0); // don't forget to switch it back