我正在使用 glext.h ( http://oss.sgi.com/projects/ogl-sample/ABI/gext.h ) 来访问 Windows 窗体应用程序的 OpenGL 缓冲区函数。
PFNGLGENBUFFERSPROC myglGenBuffers = PFNGLGENBUFFERSPROC)wglGetProcAddress("glGenBuffers");
PFNGLGENBUFFERSPROC myglBindBuffer = (PFNGLGENBUFFERSPROC)wglGetProcAddress("glBindBuffer");
PFNGLGENBUFFERSPROC myglBufferData = (PFNGLGENBUFFERSPROC)wglGetProcAddress("glBufferData");
PFNGLGENBUFFERSPROC myglDeleteBuffer = (PFNGLGENBUFFERSPROC)wglGetProcAddress("glDeleteBuffer");
它们似乎都有效,除了 glBufferData。myglBufferData 期望
(GLsizei, GLuint *)
代替
(GLenum, GLsizeiptr, const GLvoid *, GLenum)^
作为输入参数,我不知道为什么。我究竟做错了什么?
不幸的是,使用 GLEW 不是一种选择。
^glBufferData 规范