我想在Windows 10 64位上使用OpenGL 4.3和SDL 2渲染一些东西。
我知道我必须在创建上下文之后使用像GLEW这样的函数加载库或者使用SDL_GL_GetProcAddress手动加载函数指针。
但我注意到一个头文件 SDL_opengl_glext.h 。
在查看之后,我发现了一些函数typedef,例如:
typedef void (APIENTRYP PFNGLGENBUFFERSPROC) (GLsizei n, GLuint *buffers);
但也有一些函数原型,例如:
GLAPI void APIENTRY glGenBuffers (GLsizei n, GLuint *buffers);
这个函数typedef和prototypes的目的究竟是什么?为什么SDL包含此头文件?
答案 0 :(得分:3)
因为SDL也需要与OpenGL交谈。因此,它将根据自己的需要加载OpenGL函数。该标头实际上只是标准OpenGL标头glext.h
的一种形式。