1
這裏是我的代碼,設置紋理COORDS繪製對稱的四邊形:紋理有一個邊界線反覆
GLfloat defaultTexCoords[] = {
0.0f, 0.0f, // 0 (0,0)
1.0f, 0.0f, // 1 (1,0)
1.0f, 1.0f, // 2 (1,1)
0.0f, 1.0f // 3 (0,1)
};
// VERTEX ARRAY
GLfloat mainVertexArray[] = {
0.0f, 0.0f, // 0 1
0.0f /* size_x */, 0.0f, // 2 3
0.0f /* size_x */, 0.0f /* size_y */, // 4 5
0.0f, 0.0f /* size_y */ // 6 7
};
// VERTEX & TEXTURE INDEXES
GLushort defaultIndices[] = { 0, 1, 3, 2 };
glEnable(GL_TEXTURE_2D);
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
glBindTexture(GL_TEXTURE_2D, m_texId);
glTexCoordPointer(2, GL_FLOAT, 0, defaultTexCoords);
// Here the cells size_x, size_y, etc. in VERTEX ARRAY
// are overwritten with dimensions of quad to draw
// ... some mainVertexArray[...] = ...
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(2, GL_FLOAT, 0, mainVertexArray);
glDrawElements(GL_TRIANGLE_STRIP, 4, GL_UNSIGNED_SHORT, indices);
的問題是,在drawed四,一,在頂部單行基本上是抄自紋理的底部。清晰可見,y = 0線的亮度與底部(複製)線的亮度相同。
可能是什麼問題?