关于GLUT,百度百科是这样说的:
GLUT代表OpenGL应用工具包,英文全称为OpenGL Utility Toolkit,是一个和窗口系统无关的软件包,
它由Mark Kilgard在SGI时写的。作为AUX库的功能更强大的替代品,用于隐藏不同窗口系统API的复杂性。
是一个学习OpenGL编程的一个良好开端。
参考以下资料:
http://www.opengl.org/resources/libraries/glut
下面将配置开发环境,并实现一个简单的程序:
1.从网上获取文件:glut.h、glut32.lib、glut32.dll
2.将glut.h放入VS2008安装目录下的vc/include/gl中,如果没有gl文件夹,就自己建立一个
3.将glut32.lib放入vc/lib中
4. 将glut32.dll放入操作系统的system32文件夹下,这样是最简单的。当然你可以将glut32.dll放入每一个开发的opengl程序中。
这样就可以建立一个控制台程序,代码如下所示:
- // testOpengl1.cpp : 定义控制台应用程序的入口点。
- //
- #include "stdafx.h"
- #include <gl/glut.h>
- void display(void)
- {
- 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 (void)
- {
- glClearColor (0.0, 0.0, 0.0, 0.0);
- 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");
- init ();
- glutDisplayFunc(display);
- glutMainLoop();
- return 0;
- }
运行程序,会出现两个窗口,一个命令行程序和glut窗口。如果你嫌烦,可以去掉命令行窗口。方法如下所示:
1.在程序中加入:
#pragma comment(linker, "/subsystem:/"windows/" /entry:/"mainCRTStartup/"")
2.设置vs工程:项目熟悉->设置->链接器->子系统,下拉框选取Windows(/SUBSYSTEM:Windows)