为了编译一个基于OpenGL写的提取直线的程序,无奈把OpenGL肤浅的搞了一下,先分享下VC6如何配置OpenGL
1、首先,由于OpenGL是一个API的标准,得下载一个实现该标准的工具包,win下就是glut,下载地址http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip
解压后得到如下的头文件和动态库(在此之前应该确认正确安装了显卡驱动,毕竟是一个图形库,显卡安装不正确显然是不行的)
2、打开VC6新建Win32 Console Application,然后建好include和lib目录,并将刚才的glut.h拷贝到include/GL下,将glut32.lib拷贝至lib目录下。在VC6的工程中把头文件的路径(Project Settings——C/C++——Preprocessor,在Additional include directories中添加“.\include”),lib文件的路径(Project Settings——Link——Input,在Additional Library Path中添加“.\lib”,在Object/library modules中添加glut32.lib,opengl32.lib )
注意:这里不需要拷贝和添加glut.lib,否则会报错“无法定位程序输入点glPopAttrib于动态连接库OPENGL.DLL上”,如果报这个错,删掉添加的glut.lib就可以了。
3、在包含main函数的cpp文件中添加测试代码:
//
#include "stdafx.h"
#include <GL /glut.h >
void display ()
{
glClear (GL_COLOR_BUFFER_BIT );
glBegin (GL_POLYGON );
glVertex2f (- 0. 5, - 0. 5) ;
glVertex2f (- 0. 5, 0. 5) ;
glVertex2f ( 0. 5, 0. 5) ;
glVertex2f ( 0. 5, - 0. 5) ;
glEnd ();
glFlush ();
}
int main ( int argc , char * argv [])
{
glutInit (&argc ,argv );
glutCreateWindow ( "Hello,world!" );
glutDisplayFunc (display );
glutMainLoop ();
}
4、编译通过,但是运行为报缺失dll文件,然后挨个下载,我测试的时候缺失过OpenGL.dll、HfxClasses45.dll和ipl.dll,网上都能找到,最后运行就可以看到弹出了一个HelloWorld的窗体,就说明OpenGL的开发环境配置成功了。
5、顺便说一下如何在建好Console Application后把那个Dos的黑框去掉的方法:
在VC6,Project settings选择 Link 选项卡,从 Category 中选择 Output,在 Entry-point synmbol 文本框中键入 mainCRTStartup,并且在 Project options 文本框中用将subsystem:console修改为subsystem:windows 。这时候再运行就直接弹出OpenGL的窗体,不会弹出Dos黑框了。