OpenGL多纹理镶嵌

时间:2012-10-02 20:41:27

标签: opengl

我必须在OpenGL中用矩形纹理细分一些表面。为简单起见,让它成为一个三角形。纹理彼此接触,并且不重叠。这是通过将GL_TEXTURE_WRAP_S和GL_TEXTURE_WRAP_T设置为GL_CLAMP_TO_BORDER并正确调整纹理坐标来完成的。一切顺利,而GL_TEXTURE_MIN_FILTER和GL_TEXTURE_MAG_FILTER设置为GL_NEAREST,但是当我想在神器上传后应用GL_LINEAR文件环和/或各向异性过滤时:纹理边框像素的alpha逐渐下降到透明,以便在相邻纹理之间可见背景颜色线。

如果在保留线性过滤的同时将多个纹理合并为一个,我怎样才能避免这个过滤?

1 个答案:

答案 0 :(得分:0)

您可能需要GL_CLAMP_TO_EDGE而不是GL_CLAMP_TO_BORDER。夹点边框将边缘像素与边框颜色混合,边框颜色初始化为(0,0,0,0)。这就是你透明度的来源。

将纹理夹在实际边缘,或设置不透明的边框颜色。