opengl - 从先前绑定(bind)的纹理中检索像素 - OpenGL

标签 opengl textures

在 OpenGL 中,是否可以从先前创建的纹理(仅给出纹理 ID)中检索像素数组?

最佳答案

是的。
再次绑定(bind)并调用glGetTexImage()
如果您不想弄乱当前绑定(bind)的纹理,可以将其绑定(bind)到不同的纹理单元。纹理单元是保存绑定(bind)纹理的容器。您可以将一个纹理绑定(bind)到每个纹理单元。 OpenGL 2.1 要求实现至少有 2 个纹理单元。您经常使用的默认纹理单元是单元 0。要切换当前纹理单元,请调用 glActiveTexture():

glActiveTexture(GL_TEXTURE1);
glBindTexture(texid);
glGetTexImage(...);
glActiveTexture(GL_TEXTURE0); // don't forget to switch it back

关于opengl - 从先前绑定(bind)的纹理中检索像素 - OpenGL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/635858/

相关文章:

opengl - 将 vec3 乘以模型 View 矩阵

javascript - WebGL - 沿行进方向旋转对象

arrays - 如何用 1D 纹理替换 GLSL 统一数组

windows - 更新显卡不更新opengl32.dll

ios - 导入和创建许多大型 Sprite 的正确方法:SpriteKit

c++ - libGL 堆使用

objective-c - 在不同的NSWindow中的NSOpenGLView上绘制不同的形状

opengl - 编译顶点着色器程序失败

javascript - 在 ThreeJS 中预加载纹理和图像?

c++ - D3DXERR_INVALIDDATA 发生