 <p>The problem is NOT your texture coordinates.</p> <p>The problem is that you're loading the texture wrong. You're forgetting to remove the bitmap header, so all the real data is shifted over, and the end of each line is shifted onto the beginning of the next line.</p> <p>Texture wrapping would wrap pixels from the right back onto the same line, but the out-of-place region is shifted down one row. Texture wrapping also wouldn't occur with the "clamp to edge" mode you've enabled.</p>