![](https://csdnimg.cn/release/download_crawler_static/4363242/bg3.jpg)
•
背景过程管理函数:auxIdleFunc();
•
程序运行函数:auxMainLoop()。
4.OpenGL 工具库 OpenGL Utility Toolkit
包含大约 30 多个函数,函数名前缀为 glut。glut 是不依赖于窗口平台的
OpenGL 工具包,由 Mark KLilgrad 在 SGI 编写(现在在 Nvidia),目的是隐藏
不同窗口平台 API 的复杂度。 函数以 glut 开头,它们作为 aux 库功能更强的替
代品,提供更为复杂的绘制功能,此函数由 glut.dll 来负责解释执行。由于 glut
中的窗口管理函数是不依赖于运行环境的,因此 OpenGL 中的工具库可以在 X-
Window, Windows NT, OS/2 等系统下运行,特别适合于开发不需要复杂界面
的 OpenGL 示例程序。对于有经验的程序员来说,一般先用 glut 理顺 3D 图形代
码,然后再集成为完整的应用程序。
这部分函数主要包括:
•
窗口操作函数:窗口初始化、窗口大小、窗口位置函数等
[glutInit()、glutInitDisplayMode()、glutInitWindowSize()、glutInitWindowPositio
n()];
•
回调函数:响应刷新消息、键盘消息、鼠标消息、定时器函数
[GlutDisplayFunc()、glutPostRedisplay()、glutReshapeFunc()、glutTimerFunc()、g
lutKeyboardFunc()、glutMouseFunc()];
•
创建复杂的三维物体:这些和 aux 库的函数功能相同;
•
菜单函数:创建添加菜单的函数
GlutCreateMenu()、glutSetMenu()、glutAddMenuEntry()、glutAddSubMenu()和
glutAttachMenu();
•
程序运行函数:glutMainLoop()。
5.Windows 专用库
针对 windows 平台的扩展,包含有 16 个函数,函数名前缀为 wgl。这部分
函数主要用于连接 OpenGL 和 Windows ,以弥补 OpenGL 在文本方面的不足。
Windows 专用库只能用于 Windows 环境中。
这类函数主要包括以下几类:
•
绘图上下文相关函数:
wglCreateContext()、wglDeleteContext()、wglGetCurrentContent()、wglGetCurr
entDC()、wglDeleteContent();
•
文字和文本处理函数:wglUseFontBitmaps()、wglUseFontOutlines();
•
覆盖层、地层和主平面层处理函数:
wglCopyContext()、wglCreateLayerPlane()、wglDescribeLayerPlane()、wglReaki
zeLayerPlatte();
•
其他函数:wglShareLists()、wglGetProcAddress()。
6.Win32 API 函数库
包含有 6 个函数,函数名无专用前缀,是 win32 扩展函数。这部分函数主要
用于处理像素存储格式和双帧缓存;这 6 个函数将替换 Windows GDI 中原有的
同样的函数。Win32API 函数库只能用于 Windows 95/98/NT 环境中。
7.X 窗口专用库
是针对 Unix 和 Linux 的扩展函数。包括渲染上下文、绘制图元、显示列表、纹
理贴图等;
•
初始化:glXQueryExtension();