以画xyz坐标轴为例,很多人会遇到用glcolor设置了颜色,但是直线画出来还是黑色或者白色的情况,这可能是因为没有打开GL_COLOR_MATERIAL,或者没有关闭GL_TEXTURE_2D
glEnable(GL_DEPTH_TEST);
glLineWidth(3.0f);
glEnable(GL_COLOR_MATERIAL);
float axes_length = 0.2;
glEnableClientState(GL_VERTEX_ARRAY);
glColor4f(1.0, 0, 0, 1);
float linevertexs_x[6] = {0,0,0,axes_length,0,0};
glVertexPointer(3,GL_FLOAT,0, linevertexs_x);
glDrawArrays(GL_LINES,0, 2);
glColor4f(0, 1.0, 0, 1);
float linevertexs_y[6] = {0,0,0,0,axes_length,0};
glVertexPointer(3,GL_FLOAT,0, linevertexs_y);
glDrawArrays(GL_LINES,0, 2);
glColor4f(0, 0, 1.0, 1);
float linevertexs_z[6] = {0,0,0,0,0,axes_length};
glVertexPointer(3,GL_FLOAT,0, linevertexs_z);
glDrawArrays(GL_LINES,0, 2);
//glColor4f(1, 1, 1, 1);
glDisableClientState(GL_VERTEX_ARRAY);
glDisable(GL_COLOR_MATERIAL);