// declare a function pointer type
typedef void (*glFlushPointer)();
// a global function pointer
glFlushPointer glFlush = 0;
#include <GL/gl.h> //< required for wglGetProcAddress
void glewInit() {
// now repeat this process for every GL function you need...
glFlush = (glFlushPointer)wglGetProcAddress("glFlush");
}
1条答案
按热度按时间yc0p9oo01#
正如上面的注解中提到的,openGL32.dll包含wglGetProcAddress方法,这几乎是openGL所需要的唯一函数。
加载器库 (例如:glew、glad等) 基本上是一个函数指针的加载。这些函数指针需要在启动时初始化,因此需要调用glewInit,它实际上只是对wglGetProcAddress进行一个加载调用。
基本上,glew本质上可以归结为内部沿着一些东西: