VS2008中OpenGL环境配置
安装
下载OpenGL类库。
将.h文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL目录中(没有GL目录就自己创建一个,这里的具体路径视电脑上VS2008安装的位置而定)
将.lib文件拷贝到C:\ProgramFiles\Microsoft Visual Studio 9.0\VC\lib目录中
将.dll文件拷贝到C:\Windows\System32目录中
遇到问题
1、配置环境
先创建一个Win32控制台项目,配置项目属性:
(1)项目——项目属性——配置属性——C/C++— —预处理器——预处理器定义,添加
GLUT_BUILDING_LIB
(2)项目——项目属性——配置属性——链接器——输入——附加依赖项,添加
glut32.lib Opengl32.libGlu32.lib (glaux.libVS2008不加)
2、在VS2008中运行Win32 console程序出现“Error spawning ’cmd.exe‘”
进入菜单Tools -> Options -> Projects and Solutions -> VC++ Directories
添加:
$(SystemRoot)/System32
$(SystemRoot)
$(SystemRoot)/System32/wbem
其他症状:在Release模式下就没有问题。
原因:这个是VS2008的一个BUG,由FAT32文件格式引起。
解决办法:
方法一:
英文版:Project Properties -> Manifest Tool-> Use FAT32 Work-around -->Yes
中文版:项目-->项目属性-->配置属性-->清单工具-->使用FAT32解决方法—>是
然后clean下,然后Rebuild即可正常运行,但是这样就会很麻烦,每次建个项目,都要设置它的项目属性。
方法二:(推荐)
将你的项目放在NTFS分区下,这样才可以正常的工作。
如果可以,直接将Visual Studio 2008装在你的NTFS分区下,这样就不会有限制了,你可以将你的项目创建在任何地方了,而也不会出现上面所说的错误。
测试
创建C++控制台应用程序
输入如下代码:
#include //这个必不可少
#include
void display()
{
glClear(GL_COLOR_BUFFER_BIT);
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();
glFlush();
}
void init()
{
glClearColor(0.0,0.0,0.0,0.0); //以黑色清屏
glMatrixMode(GL_PROJECTION); //glMatrixMode - 指定哪一个矩阵是当前矩阵
//GL_PROJECTION,对投影矩阵应用随后的矩阵操作
glLoadIdentity(); //该函数的功能是重置当前指定的矩阵为单位矩阵
glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
}
int main(int argc,char**argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowSize(250,250);
glutInitWindowPosition(100,100);
glutCreateWindow("Hello OpenGL");
init();
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
运行,结果是一个矩形。