我的游戏通常使用GL_TEXTURE_RECTANGLE_EXT绘制2D纹理。但是,由于这不是所有硬件都支持的,我试图让GL_TEXTURE_2D工作。最初大多数图像显示为纯白色,直到我开始呼叫当使用GL_TEXTURE_2D时,OpenGL纹理首次绘制白色
glTexParameteri(caps->extension, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(caps->extension, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
每个图像绘制一次,而不是每帧一次。 (使用RECTANGLE_EXT,我可以每帧删除一次,并且工作正常。)
好的,现在图像显示出来。问题在于,在第一次绘制纹理时,它们会画成纯白色。之后,他们正确绘制。这会导致在第一次绘制任何图像时出现大量白色闪光,并且随着图像被重新使用而解决。任何想法可能导致这种情况?
我现在还打开了“2次幂”四舍五入,所以当第一次创建时,所有纹理四舍五入到最接近的2次幂。
首先实际使用`GL_TEXTURE_RECTANGLE`的奇怪原因是......? – 2011-12-16 00:21:29