* @param w New width\r
* @param h New height\r
*/\r
-void windowReshape(int w, int h) {\r
- glViewport(0, 0, w, h); // Reset The Current Viewport\r
- glMatrixMode(GL_PROJECTION); // Select The Projection Matrix\r
- glLoadIdentity(); // Reset The Projection Matrix\r
-\r
- // Calculate The Aspect Ratio Of The Window\r
- gluPerspective(45.0f,(GLfloat)w/(GLfloat)h,0.1f,100.0f);\r
-\r
- glMatrixMode(GL_MODELVIEW); // Select The Modelview Matrix\r
- glLoadIdentity(); // Reset The Modelview Matrix\r
+void windowReshape(int width, int height) {\r
+ glViewport(0, 0, (GLsizei)width, (GLsizei)height); // Set our viewport to the size of our window\r
+ glMatrixMode(GL_PROJECTION); // Switch to the projection matrix so that we can manipulate how our scene is viewed\r
+ glLoadIdentity(); // Reset the projection matrix to the identity matrix so that we don't get any artifacts (cleaning up)\r
+ gluPerspective(60, (GLfloat)width / (GLfloat)height, 0.1, 1000.0); // Set the Field of view angle (in degrees), the aspect ratio of our window, and the new and far planes\r
+ glMatrixMode(GL_MODELVIEW); // Switch back to the model view matrix, so that we can start drawing shapes correctly\r
}\r
\r
/**\r
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);\r
glLoadIdentity();\r
\r
- glTranslatef(-1.5f, 0.0f, -6.0f);\r
+ glTranslatef(0.0f,0.0f,-6.0f); // Move Left 1.5 Units And Into The Screen 6.0\r
+\r
\r
glBegin(GL_QUADS);\r
- glColor3f(1.0f,0.0f,0.0f); // Set The Color To Red\r
+ glColor3f(1.0f,0.0f,0.0f); // Set The Color To Red\r
glVertex3f(-1.0f, 1.0f, 0.0f); // Top left\r
glVertex3f( 1.0f, 1.0f, 0.0f); // Top Right\r
glVertex3f( 1.0f,-1.0f, 0.0f); // Bottom Right\r
\r
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); // Really Nice Perspective Calculations\r
\r
- glutSwapBuffers();\r
-\r
glutReshapeFunc(windowReshape);\r
glutDisplayFunc(display);\r
glutMouseFunc(mouse);\r