2017-02-16
在C/C++程序中使用OpenGL时,需要使用glew/glad这样的第三方库来加载OpenGL函数。不像一般的第三方lib,通过头文件,直接就能够找到函数的指针地址。很多同学不明白为什么需要这么做。本文,就来分析一下。
因为gl.h这个头文件在windows平台是最原始的版本,微软并不更新,一些最新的函数接口并不能暴露出来,不知为何,在Linux上同样不更新了,最新的OpenGL函数原型在glext.h文件中被声明。Khronos官方解释如下
Because extensions vary from platform to platform and driver to driver, OpenGL developers can't expect interfaces for all extensions to be defined in the standard gl.h, glx.h, and wgl.h header files supplied with the OS / graphics drivers. Additional header files are provided here, including: