在opengl中,用glTexSubImage2D遇到了一个奇怪的问题

时间:2022-02-28 23:39:07
用glTexSubImage2D在一个已经存在的纹理A中,嵌入另外一幅纹理B贴图,

glBindTexture(GL_TEXTURE_2D, textureID);
glTexSubImage2D(GL_TEXTURE_2D,0,xoffset,yoffset,InsertBMP->sizeX,InsertBMP->sizeY,GL_RGB,GL_UNSIGNED_BYTE,InsertBMP->data);

程序运行后,发现在很近距离的时候,纹理B的确嵌入到纹理A中去了,但用gluLookAt 函数把视点拉远离纹理后,纹理B就慢慢消失了,依然还是纹理A的贴图。。。

请问这是怎么回事?


4 个解决方案

#1


用glTexSubImage2D已经把纹理A覆盖了一部分,为什么把视点拉远后,纹理A依然显示出来,真是奇怪?

#2


有可能随着距离的拉远,你的xoffset,yoffset偏出了视锥,你把这两个值直接用0,0试试

#3


谢谢楼上,问题已解决!mipmap分层导致!

#4


夫人发发

#1


用glTexSubImage2D已经把纹理A覆盖了一部分,为什么把视点拉远后,纹理A依然显示出来,真是奇怪?

#2


有可能随着距离的拉远,你的xoffset,yoffset偏出了视锥,你把这两个值直接用0,0试试

#3


谢谢楼上,问题已解决!mipmap分层导致!

#4


夫人发发