颜色的显示模式分为两种:
有如下伪代码:
setColor(RED) drawItem(A)
RGBA模式下可以用glColor*()选择当前颜色:
颜色索引模式下可以用glIndex*(Type c)来指定颜色。
```cpp glutInitDisplayMode(GLUTSINGLE | GLUTRGB);
glClearColor(0.0, 0.0, 0.0, 0.0); glShadeModel(GL_SMOOTH);
void TwoDDispaly::colorDisplay() { glClear(GLCOLORBUFFERBIT); glBegin(GLTRIANGLES); glColor3f(1.0, 0.0, 0.0); glVertex2f(5.0, 5.0); glColor3f(0.0, 1.0, 0.0); glVertex2f(25.0, 5.0); glColor3f(0.0, 0.0, 1.0); glVertex2f(5.0, 25.0); glEnd(); glFlush(); }
```
其中glShadeModel(GLSMOOTH);指定着色模型, 其中GLSMOOTH表示可以用多种颜色进行绘制,而GL_FLAT只能用单色。
原文:http://www.cnblogs.com/sld666666/p/3812425.html