1.无色多边形
#include <GL/glut.h>
void Display(void) {
glClearColor(0,0,0,0);
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_TRIANGLE_FAN);
glColor3f(1,1,1);
glVertex2f(0,0.5);
glColor3f(1,1,1);
glVertex2f(-0.4,-0.3);
glColor3f(1,1,1);
glVertex2f(0.4,-0.3);
glEnd();
glBegin(GL_TRIANGLE_FAN);
glColor3f(1,1,1);
glVertex2f(0,-0.5);
glColor3f(1,1,1);
glVertex2f(0.4,0.3);
glColor3f(1,1,1);
glVertex2f(-0.4,0.3);
glEnd();
glutSwapBuffers();
}
int main (int argc, char *argv[]) {
glutInit(&argc, argv);
glutInitDisplayMode (GLUT_RGBA | GLUT_DOUBLE);
glutInitWindowPosition(100,100);
glutInitWindowSize(400, 400);
glutCreateWindow("你的名字");
glutDisplayFunc(Display);
glutMainLoop();
return 0;
}
2.渐变多边形
#include <GL/glut.h>
void Display(void) {
glClearColor(0,0,0,0);
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_TRIANGLE_FAN);
glColor3f(1,1,1);
glVertex2f(0, 0);
glColor3f(1.0, 0, 0);
glVertex2f(0, 0.5);
glColor3f(1.0, 0, 0);
glVertex2f(0.1, 0.3);
glColor3f(1.0, 0, 1.0);
glVertex2f(0.4, 0.3);
glColor3f(1.0, 0, 1.0);
glVertex2f(0.25, 0);
glColor3f(0, 0, 1.0);
glVertex2f(0.4, -0.3);
glColor3f(0, 0, 1.0);
glVertex2f(0.1, -0.3);
glColor3f(0, 1.0, 1.0);
glVertex2f(0, -0.5);
glColor3f(0, 1.0, 1.0);
glVertex2f(-0.1, -0.3);
glColor3f(0, 1.0, 0.0);
glVertex2f(-0.4, -0.3);
glColor3f(0, 1.0, 0.0);
glVertex2f(-0.25, 0);
glColor3f(1.0, 1.0, 0.0);
glVertex2f(-0.4, 0.3);
glColor3f(1.0, 1.0, 0.0);
glVertex2f(-0.1,0.3);
glColor3f(1.0, 0, 0.0);
glVertex2f(0, 0.5);
glEnd();
glutSwapBuffers();
}
int main (int argc, char *argv[]) {
glutInit(&argc, argv);
glutInitDisplayMode (GLUT_RGBA | GLUT_DOUBLE);
glutInitWindowPosition(100,100);
glutInitWindowSize(400, 400);
glutCreateWindow("你的名字");
glutDisplayFunc(Display);
glutMainLoop();
return 0;
}