Opengl 纹理有一条重复的边界线

Opengl 纹理有一条重复的边界线,opengl,textures,vertex,Opengl,Textures,Vertex,以下是设置纹理坐标以绘制对称四边形的代码: 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,

以下是设置纹理坐标以绘制对称四边形的代码:

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);
问题是,在绘制的四边形中,顶部的一条单行基本上是从纹理的底部复制的。可以清楚地看到,y=0线的亮度变化与底部(复制的)线相同

有什么问题吗?

将包裹模式切换到