如何获取 GL 库/标头?

2023-12-06

#include <gl\gl.h> 
#include <gl\glu.h> 
#include <gl\glaux.h>

这是一个示例,但是从哪里获取 GL 标头呢?


Windows

在 Windows 上,您需要包含gl.hOpenGL 1.1 支持的标头和 OpenGL32.lib 的链接。两者都是视窗软件开发工具包。此外,您可能需要以下标头,您可以从中获取http://www.opengl.org/registry .

  • <GL/glext.h>- OpenGL 1.2 及以上兼容性配置文件和扩展接口..
  • <GL/glcorearb.h>- OpenGL 核心配置文件和 ARB 扩展接口,如 OpenGL 4.3 规范的附录 G.2 中所述。不包括仅在兼容性配置文件中找到的接口。
  • <GL/glxext.h>- GLX 1.3及以上API和GLX扩展接口。
  • <GL/wglext.h>- WGL 扩展接口。

Linux

在 Linux 上,您需要链接 libGL.so,它通常是 libGL.so.1 的符号链接,而 libGL.so.1 又是实际库/驱动程序的符号链接,而实际库/驱动程序是图形驱动程序的一部分。例如,在我的系统上,实际的驱动程序库名为 libGL.so.256.53,这是我使用的 nvidia 驱动程序的版本号。您还需要包括gl.hheader,通常是 Mesa 或 Xorg 包的一部分。再说一次,你可能需要glext.h and glxext.h from http://www.opengl.org/registry . glxext.h拥有 GLX 扩展,相当于wglext.h在 Windows 上。

如果您想使用 OpenGL 3.x 或 OpenGL 4.x 功能而不使用已移至GL_ARB_compatibility扩展,使用新的gl3.h来自注册表网页的标头。它取代了gl.h并且glext.h(只要您只需要核心功能)。

最后但是同样重要的,glaux.h不是与 OpenGL 关联的标头。我假设您已经阅读了糟糕的 NEHE 教程并且只是同意它。 Glaux 是一个非常过时的 Win32 库 (1996),用于加载未压缩的位图。使用更好的东西,比如 libPNG,它也支持 Alpha 通道。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取 GL 库/标头? 的相关文章

随机推荐