2012-10-18 24 views
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線的亮度與底部(複製)線的亮度相同。

可能是什麼問題?

回答