博客参考:http://blog.csdn.net/xie_zi/article/details/1911406,现在这个教程代码已经上传在Github,教程列表在此处
GLUT 代表OpenGL Utility Tookit。Mark J.Kilgard 为了使OpenGL应用程序结构能够真正独立于窗口系统构思了GLUT库。感谢GLUT,使我们可以写程序而不必去学关于X windows或者微软自己的窗口系统。Kilgard在X windows上应用这个库,后来Nate Robins把它扩展到微软的窗口系统。感谢他们,他们做的太棒了。
在这个教程里,我将给你介绍基本的使用GLUT建立一个应用程序。这个教程将不介绍如何去渲染那些比较精美的视觉场景。这是为了保持代码尽可能的简洁。
需要的库: GLUT,此处我是通过vcpkg直接安装
vcpkg.exe install glut
这个网站里有很多GLUT库里函数的原型定义:GLUT原型定义
为了用GLUT写一个C++语言程序你需要有三个文件:
1:glut.h -- 头文件。
2. glut.lib和glut32.lib(glut.lib是SGI的,glut32.lib是Microsoft的。好像就是看你用的什么操作系统了。一般down的这两个文件都有)库文件。
3: glut32.dll(windows)和glut.dll(SGI)-- 运行时的动态库。
在Visual Studio里的设置
有Visual C/C++里建立工程可以有两个选择:控制台(console)和Win32。第一个是最常用的,选第一个的话,应用程序将会有两个窗口,一个控制台窗口(就是命令行那样的窗口)一个OpenGL窗口。选择Win32的也有可能用GLUT和windows编程结合建立一个应用程序。所有你必须做的是改变一个设置。
1.主菜单中选择“工程”(project)->“设置”(setting)对话框中选择“连接”(link)标签。
2.在“分类”(Category)组合框里选择“输出”(output)
3.在“入口点”(Entry-point symbol)文本框里键入“mainCRTStartup”
而对一个现有的控制台应用程序,有一个简单的办法把它转换成Win32应用程序,这样可以摆脱那个命令行窗口。
1:接着上面的添加入口点的那个标签。
2:在“工程选项”(Project options)文本框里把“subsystem:console”替换成“subsystem:windows”
或者通过代码形式,在代码的开头添加下面的这一行代码,而不进行上述设置。
#pragma comment(linker,“/subsystem:/”windows/”/entry:/”mainCRTStartup/””)
现在这个应用程序就没有控制台窗口,只有OpenGL窗口。为了把GLUT连接到一个程序里,你还得进行以下几步。
1:选择“工程”(project)->“设置”(settings)。
2:选择“连接”(Link)标签。
3:增加下面的文件到“对象/库模块”(Object/library modules):OpenGL32.lib,glut32.lib,glu32.lib.(一般加一个glut32.lib就可以了)
上面添加了glut32.lib和opengl32.lib。这两个都是标准OpenGL的库,glu是一个API来自标准的OpenGL扩充。
之后就可以在工程内创建自己的OpenGL代码了。