OpenGL GL_LINES enpoints not joining
Posted
by
old-school rules
on Stack Overflow
See other posts from Stack Overflow
or by old-school rules
Published on 2010-12-26T00:43:46Z
Indexed on
2010/12/26
0:54 UTC
Read the original article
Hit count: 134
opengl
I'm having problems with the GL_LINES block... the lines in the sample below do not connect on the ends (although sometimes it randomly decides to connect a corner or two). Instead, the endpoints come within 1 pixel of one another (leaving a corner that is not fully squared; if that makes sense). It is a simple block to draw a solid 1-pixel rectangle.
glBegin(GL_LINES);
glColor3b(cr, cg, cb);
glVertex3i(pRect->left, pRect->top, 0);
glVertex3i(pRect->right, pRect->top, 0);
glVertex3i(pRect->right, pRect->top, 0);
glVertex3i(pRect->right, pRect->bottom, 0);
glVertex3i(pRect->right, pRect->bottom, 0);
glVertex3i(pRect->left, pRect->bottom, 0);
glVertex3i(pRect->left, pRect->bottom, 0);
glVertex3i(pRect->left, pRect->top, 0);
glEnd();
The sample below seems to correct the problem, giving me sharp, square corners; but I can't accept it because I don't know why it's acting this way...
glBegin(GL_LINES);
glColor3b(cr, cg, cb);
glVertex3i(pRect->left, pRect->top, 0);
glVertex3i(pRect->right + 1, pRect->top, 0);
glVertex3i(pRect->right, pRect->top, 0);
glVertex3i(pRect->right, pRect->bottom + 1, 0);
glVertex3i(pRect->right, pRect->bottom, 0);
glVertex3i(pRect->left - 1, pRect->bottom, 0);
glVertex3i(pRect->left, pRect->bottom, 0);
glVertex3i(pRect->left, pRect->top - 1, 0);
glEnd();
Any OpenGL programmers out there that can help, I would appreciate it :)
© Stack Overflow or respective owner