2017-01-07 184 views
1

我想在Windows 10 64位上使用OpenGL 4.3和SDL 2渲染一些東西。 我知道我必須使用像GLEW這樣的函數加載庫或使用SDL_GL_GetProcAddress手動創建上下文後,在運行時加載函數指針。 但我注意到一個頭文件SDL_opengl_glext.h

正在調查這件事後,我發現例如在一些功能的typedef:SDL_opengl_glext.h的用途是什麼?

typedef void (APIENTRYP PFNGLGENBUFFERSPROC) (GLsizei n, GLuint *buffers); 

而且例如一些函數原型:

GLAPI void APIENTRY glGenBuffers (GLsizei n, GLuint *buffers); 


請告訴我究竟該功能的typedef的目的和原型?爲什麼SDL包含此頭文件?

回答

2

因爲SDL也需要與OpenGL交談。所以它會根據自己的需要加載OpenGL函數。該標題實際上只是標準OpenGL標頭glext.h的一種形式。