我有一個正在繪製到四邊形的紋理。紋理是此截圖左上角的重複圖案:http://img828.imageshack.us/img828/3305/blahpv.png opengl紋理僅爲3px乘9px,我傳遞的紋理座標非常大,它使用GL_REPEAT在3x9紋理上循環。對截圖中看到的奇怪干擾模式的任何解釋?當四邊形完全垂直於相機時,紋理看起來很好(重複完美)...截圖是四邊形旋轉了幾度。當四邊形改變它到相機的距離或旋轉改變時,異常情況似乎會改變,所以我認爲它與紋理採樣和浮點四捨五入有關,但我不知道如何解決它。OpenGL重複紋理導致旋轉時出現異常
更新#1:
我不使用着色器,但是這是我當前如何做的Python爲每個頂點:
(x0, y0, z0) = gluProject(vert[0].x, vert[0].y, 0.0)
x0 /= maskTextureWidth # 3.0
y0 /= maskTextureHeight # 9.0
glMultiTexCoord2f(GL_TEXTURE1_ARB, x0, y0)
glVertex2f(vert[0].x, vert[0].y)
不幸的是,使用GL_LINEAR或任何mipmapping意味着面具將會模糊。我真的需要面具的每個紋理元素與屏幕上的一個像素相匹配。像這樣: http://img101.imageshack.us/img101/6499/30831346。png 左圖顯示了整個屏幕上的遮罩以及我試圖繪製的四邊形輪廓。正確的圖像顯示了繪製白色四邊形(已與面具混合)後屏幕的外觀。 – bparker 2010-09-09 18:38:11