安装过程:
第一步:选择一个编译环境
现在Windows系统的主流编译环境有Visual Studio,Broland C++ Builder,Dev-C++等,它们都是支持OpenGL的。但这里我们选择VC++ 6.0作为学习OpenGL的环境。
第二步:安装GLUT工具包
GLUT不是OpenGL所必须的,但它会给我们的学习带来一定的方便,推荐安装。
Windows环境下的GLUT下载地址:(大小约为150k)
http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip
无法从以上地址下载的话请使用下面的连接:
http://upload.programfan.com/upfile/200607311626279.zip
Windows环境下安装GLUT的步骤:
1、将下载的压缩包解开,将得到5个文件
2、以我的安装目录为例:
(1)“d:Program FilesMicrosoft Visual StudioVC98includeGL文件夹”。把解压得到的glut.h放到这个GL文件夹里。没有GL文件夹可以自己建一个,一般都有的。
(2)“d:Program FilesMicrosoft Visual StudioVC98lib文件夹”)。把解压得到的glut.lib和glut32.lib放到静态函数库所在文件夹,即lib文件夹。
(3)把解压得到的glut.dll和glut32.dll放到操作系统目录下面的system32文件夹内。(典型的位置为:C:WindowsSystem32)这是非常重要的动态链接库设置!
第三步,创建工程,其步骤如下:
(1)创建一个Win32 Console Application。(以我创建的为例,工程名为simpleGL)
(2)链接OpenGL libraries:在Visual C++中先单击Project,再单击Settings,再找到Link单击,最后在Object/library modules 的最前面加上opengl32.lib Glut32.lib Glaux.lib glu32.lib 。
(3)单击Project Settings中的C/C++标签,将Preprocessor definitions 中的_CONSOLE改为__WINDOWS。最后单击OK。
现在,准备工作基本上完成了,可不要轻视这一步,如果你没有设置好在编译及运行过程中总会出错的。
第四步,创建一个最简单的opengl程序
#include <GL/glut.h> void display(void) { glClear (GL_COLOR_BUFFER_BIT);/* clear all pixels */ glColor3f (1.0, 1.0, 1.0); glBegin(GL_POLYGON);/* draw white polygon with corners at(0.25, 0.25, 0.0) and (0.75, 0.75, 0.0)*/ 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(); glFlush ();/* start processing buffered OpenGL routines */ } void init (void) { glClearColor (0.0, 0.0, 0.0, 0.0);/* select clearing color */ glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);/* initialize viewing values */ } int main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);/*Declare initial display mode(single buffer and RGBA).*/ glutInitWindowSize (250, 250); /*Declare initial window size.*/ glutInitWindowPosition (100, 100);/*Declare initial window position.*/ glutCreateWindow ("hello");/*Open window with "hello"in its title bar.*/ init ();/*Call initialization routines.*/ glutDisplayFunc(display); /*Register callback function to display graphics.*/ glutMainLoop();/*Enter main loop and process events.*/ return 0; /* ANSI C requires main to return int. */ }
如果输出是如下图所示,则表示安装和操作都是成功的。
注意:
如果运行程序是出现opengl.dll缺失:
开发OpenGL项目时,在VS开发环境下可能会出现如图所示的错误。
在c:windowssystem32和SysWow64文件夹下存在opengl32.dll,此时,所写程序能够正常编译,但是,程序一但运行就提示
“无法启动此程序,因为计算机中丢失OPENGL.dll。尝试重新安装该程序以解决此问题。”
这时主要是因为同时引用了静态库“glut.lib”和"glut32.lib"。
即在项目->属性->配置属性->链接器->附加依赖项中增加了glut.lib和glut32.lib,而且顺序为glut.dll在前,glut32.dll在后,所以,链接器首先寻找OPENGL.dll而没有寻找opengl32.dll。此时只要将项目->属性->配置属性->链接器->附加依赖项中的glut.lib删掉即可。(因为本人之前百度到的很多安装教程上都是说要将“glut.lib”和"glut32.lib"
同时放到linker中。。。结果一直报错。。
另外,如果想要在VS里重现此错误,需要配置附加依赖项后重新生成项目。