|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
|
Announcements
Chapters
Services
Feature Zones
|
IntroductionThis is a very simple C++ console application that creates a simple OpenGL window. The source code is from the book "OpenGL Programming Guide (Third Edition)." This article will explain how to download and include the GLUT library. Once you include the GLUT library, it's very simple to build and execute the code. It explains also the OpenGL code that is used in this program. BackgroundYou should be able to use Visual Studio 2005 and C++. You should also have some idea about OpenGL. Using the CodeSteps:
Step 1Before you even start a new project, you have to download the GLUT library. You can get the latest version from this link: GLUT 3.7.6 for Windows. Click this (glut-3.7.6-bin.zip (117 KB) ) link and download the ZIP file into your computer. Step 2Unzip the folder, copy the glut32.dll file and paste it to C:\WINDOWS\system. Copy the glut32.lib file and paste it to this directory: C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Lib. The last step is to copy the glut.h file and paste it to this directory: C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\gl. The installation of the GLUT library files is done. However, if you using a different Windows or different Visual Studio version, the directories might be different. I'm assuming that you are using Windows Vista and Visual Studio 2005. Step 3Create a C++ console application. You don't need a Windows application. From Visual Studio 2005, select File -> New -> Projects. Select project types Visual C++ -> Win32 and create a Win32 console application. Step 4Type the code, build and execute. Make sure to include the //Include files
#include "stdafx.h"
#include <GL/glut.h >
The FunctionsFunction void display(void)
{
//Clear all pixels
glClear(GL_COLOR_BUFFER_BIT);
//draw white polygon (rectangle) with corners at
// (0.25, 0.25, 0.0) and (0.75, 0.75, 0.0)
glColor3f(1.0,1.0,1.0);
glBegin(GL_POLYGON);
glVertex3f(0.25, 0.25, 0.0);
glVertex3f(0.75, 0.25, 0.0);
glVertex3f(0.75, 0.75, 0.0);
glVertex3f(0.25, 0.75, 0.0);
glEnd();
// Don't wait start processing buffered OpenGL routines
glFlush();
}
Function void init(void)
{
//select clearing (background) color
glClearColor(0.0, 0.0, 0.0, 0.0);
//initialize viewing values
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
}
Main function: make sure to change the command-line parameter int _tmain(int argc, char** argv)
{
//Initialise GLUT with command-line parameters.
glutInit(&argc, argv);
//Set Display Mode
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
//Set the window size
glutInitWindowSize(250,250);
//Set the window position
glutInitWindowPosition(100,100);
//Create the window
glutCreateWindow("A Simple OpenGL Windows Application with GLUT");
//Call init (initialise GLUT
init();
//Call "display" function
glutDisplayFunc(display);
//Enter the GLUT event loop
glutMainLoop();
return 0;
}
Variable or class names should be wrapped in Points of InterestActually, this program is a very simple OpenGL program. However, if you are new and if you don't know how to initialise the GLUT library, it might take little bit more time to compile the code. HistoryUploaded on 01/29/2008
|
||||||||||||||||||||||