我正在使用一个纹理图集,它是通过将 2 个相同大小的图像并排拼接在一起制作的。当我修改纹理坐标时,我按以下顺序执行以下操作:
if(texCoordx>1) texCoordx = texCoordx % 1
- 所以一种纹理不会泄漏到另一种纹理中。if(texCoordx<0) texCoordx = 1 + texCoordx
- 同样,所以一种纹理不会泄漏到另一种纹理中。- 将纹理坐标缩放 0.5。
- 如果要在右侧绘制纹理,则添加 0.5。
这工作得很好,但是,我似乎在纹理坐标接近 1 和 0的边缘处“弄脏”了。看起来它沿着t轴被弄脏了。我附上了截图。
我知道在这里找到了一个答案,但它只是稍微缩小了污迹。我正在使用我自己的着色器,但它没有对纹理坐标进行任何修改。我也在启用GL_REPEAT
. 有人知道任何可能的原因/解决方案吗?