View difference between Paste ID: k9CQnBjT and CrZRvxvb
SHOW: | | - or go back to the newest paste.
1
/*
2
 * GL01Hello.cpp: Test OpenGL C/C++ Setup
3
 */
4
#include <windows.h>  // For MS Windows
5
#include <GL/glut.h>  // GLUT, includes glu.h and gl.h'
6
#include <iostream>
7
8
/* Handler for window-repaint event. Call back when the window first appears and
9
   whenever the window needs to be re-painted. */
10
void display() {
11
   int const win_width  = glutGet(GLUT_WINDOW_WIDTH);
12-
   glClear(GL_COLOR_BUFFER_BIT);         // Clear the color buffer
12+
   int const win_height = glutGet(GLUT_WINDOW_HEIGHT);
13
14
   glClearColor(0.0f, 0.0f, 0.0f, 1.0f); // Set background color to black and opaque
15
   glClear(GL_COLOR_BUFFER_BIT);         // Clear the color buffer; this clears the whole window regardless of the set viewport
16
17
   glViewport(0, 0, win_width, win_height); // we can set the viewport after clearing
18
19
   // Draw a Red 1x1 Square centered at origin
20
   glBegin(GL_QUADS);              // Each set of 4 vertices form a quad
21
      glColor3f(1.0f, 0.0f, 0.0f); // Red
22
      glVertex2f(-0.5f, -0.5f);    // x, y
23
      glVertex2f( 0.5f, -0.5f);
24
      glVertex2f( 0.5f,  0.5f);
25
      glVertex2f(-0.5f,  0.5f);
26
   glEnd();
27
28
   glutSwapBuffers();
29
}
30
31
/* Main function: GLUT runs as a console application starting at main()  */
32
int main(int argc, char** argv) {
33
	std::cout<<"Hello, world!!"<<std::endl;
34
   glutInit(&argc, argv);                 // Initialize GLUT
35
36
   glutInitWindowSize(320, 320);   // Set the window's initial width & height
37
   glutInitWindowPosition(50, 50); // Position the window's initial top-left corner
38
   glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE);
39
40
   glutCreateWindow("OpenGL Setup Test"); // Create a window with the given title
41
42
   glutDisplayFunc(display); // Register display callback handler for window re-paint
43
44
   glutMainLoop();           // Enter the infinitely event-processing loop
45
46
   return 0;
47
}