#include void init() { // set matrix mode to PROJECTION mode glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluOrtho2D(0,100,0,100); } void drawPoints() { //delete buffers glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_POINTS); glColor3f(1.0f, 0.0f, 0.0f); /* red */ glVertex2i(10,10); glColor3f(0.0f, 1.0f, 0.0f); /* green */ glVertex2i(50,80); glColor3f(0.0f, 0.0f, 1.0f); /* blue */ glVertex2i(70,70); glEnd(); } void keyboard(unsigned char key, int x, int y) { switch(key) { case 27: exit(0); break; } } // Called to draw scene void RenderScene(void) { // Clear the window with current clearing color glClear(GL_COLOR_BUFFER_BIT); drawPoints(); // Flush drawing commands glFlush(); } // Setup the rendering state void SetupRC(void) { // Set clear color to black glClearColor(0.0f, 0.0f, 0.0f, 1.0f); } // Main program entry point int main(int argc, char* argv[]) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); glutInitWindowSize(100,100); glutInitWindowPosition(20,20); glutCreateWindow("Points"); SetupRC(); init(); glutDisplayFunc(RenderScene); glutKeyboardFunc(keyboard); glutMainLoop(); return 0; }