作为资深小白的第一篇opengl的博客
1.环境配置步骤
1.下载环境包,已有。opengl官网:http://www.opengl.org/
最新环境文件地址:http://www.opengl.org/registry/#apispecs 很多,按需下载
2.将开发库中的.h文件拷贝到vs2010的\Include\gl目录中(没有自己建一个)
具体位置:默认安装(C盘):x:\Program Files\Microsoft\Visual Studio10.0\VC\include\gl
自定安装:xx\VC\include\gl (xx为自定文件位置,例D盘vs2010文件即D:\vc2010\VC\include\gl)
3.将.lib文件拷贝到vs2010的\lib目录中,\lib文件与1.中include文件同目录(按名称排下序)
4.将.dll文件拷贝到操作系统的system32目录中C:\Windows\System32
(注:如在开发应用程序时用到OpenGL辅助库函数,则还需下载相应动态链接库,包含glaux.dll, glaux.lib, glaux.h,相应步骤同4地址找1)
2. 工程创建及问题解决
1.建立win32 console applicatiog 空项目,将下面代码键入(ctrl+c不好使请手打)
(图形为一黑底白色的正方形)
#include <gl/glut.h>
void myDisplay(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
glFlush();
}
int main(intargc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB |GLUT_SINGLE);
glutInitWindowPosition(100, 100);
glutInitWindowSize(400, 400);
glutCreateWindow(argv[0]);
glutDisplayFunc(myDisplay);
glutMainLoop();
return 0;
}
出现如下错误:
1>------已启动生成: 项目: tt, 配置: DebugWin32 ------
1>生成启动时间为 2013/5/19 9:05:15。
1>InitializeBuildStatus:
1> 正在对“Debug\tt.unsuccessfulbuild”执行 Touch 任务。
1>ClCompile:
1> a.cpp
1>ManifestResourceCompile:
1> 所有输出均为最新。
1>a.obj: error LNK2019: 无法解析的外部符号 __imp____glutInitWithExit@12,该符号在函数 _glutInit_ATEXIT_HACK@8 中被引用
1>a.obj: error LNK2019: 无法解析的外部符号 __imp____glutCreateWindowWithExit@8,该符号在函数 _glutCreateWindow_ATEXIT_HACK@4 中被引用
1>D:\c++program\tt\Debug\tt.exe: fatal error LNK1120: 2 个无法解析的外部命令
1>
1>生成失败。
1>
1>已用时间 00:00:00.74
==========生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个==========
证明环境配对了,如果没这些错误,请重新配置环境~!
问题解决:
##重新建立一个工程##
1.选择:项目-xx属性-配置属性-连接器-输入-附加依赖项-
点选下拉箭头 键入opengl32.lib glu32.lib glut32.lib
2.error LIK2019:
解决方法:
项目-工程属性->配置属性->链接器->系统->子系统(设为‘控制台(/SUBSYSTEM:CONSOLE)’)
以下是一个上面代码的运行实例