OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言、跨平台的编程接口的规格,它用于三维图象(二维的亦可)。OpenGL是个专业的图形程序接口,是一个功能强大,调用方便的底层图形库。
 
一般OpenGL包含 GL.H GLAUX.H GLU.H glut.h glut32.lib  GLU32.LIB glut.dll glut32.dll
其中  GLUT 代表 OpenGL 应用工具包( OpenGL Utility Toolkit ),是一个与窗口系统无关的工具包。它作为 AUX 库的功能更强的替代品,用于隐藏不同窗口系统 API 的复杂性。 GLUT 的子程序的前缀使用 ”glut”
我们以VS2005为例来说明环境的配置,
 
(1)C:\Program Files\Microsoft Visual Studio\VC98\include。在这里建立一个GL文件夹把glut.h放到这个GL文件夹里。
(2)C:\Program Files\Microsoft Visual Studio\VC98\lib文件夹。把glut.libglut32.lib放到静态函数库所在文件夹,即lib文件夹。    
(3)glut.dllglut32.dll放到操作系统目录下面的system32文件夹内。(C:\Windows\System32)这个是动态链接库设置!
 
编写一个例子。如果编译通过但运行时出现这个错误“无法定位程序输入点_gultInitWithExit 于动态链接库gult32.dll上 ”
则是因为gult32.dll版本问题,可能用的gult32.dll是VS2003下面可用,解决方法是 重新下载一个gult32.dll,只要版本对上了就可以了。
 
openGL编程指南上的例子,可以帮我们测试,是否配置环境成功:
 
#include <gl/glut.h>
#include <gl/glu.h>

//using namespace std;

void init()
{
 glClearColor(0.0,0.0,0.0,0.0);
 glShadeModel(GL_FLAT);
}
void display()
{
 glClear(GL_COLOR_BUFFER_BIT);
 glColor3f(1.0,1.0,1.0);
 glLoadIdentity();
 gluLookAt(0.0,0.0,5.0,0.0,0.0,0.0,0.0,1.0,0.0);
 glScalef(1.0,2.0,1.0);
 glutWireCube(1.0);
 glFlush();

}
void reshape(int w,int h)
{
 glViewport(0,0,(GLsizei)w,(GLsizei)h);
 glMatrixMode(GL_PROJECTION);
 glLoadIdentity();
 glFrustum(-1.0,1.0,-1.0,1.0,1.2,20.0);
 glMatrixMode(GL_MODELVIEW);
}
void main(int argc,char **argv)
{
 glutInit(&argc,argv);
 glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
 glutInitWindowSize(500,500);
 glutInitWindowPosition(100,100);
 glutCreateWindow(argv[0]);
 init();
 glutDisplayFunc(display);
 glutReshapeFunc(reshape);
 glutMainLoop();
 //return 0;

}