1
我使用glext.h(http://oss.sgi.com/projects/ogl-sample/ABI/glext.h)来访问Windows窗体应用程序的OpenGL缓冲区函数。OpenGL扩展glBufferData期望2是4个参数
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 Specification
您说使用GLEW不是一个选项,但是您是否知道GLEW站点上提供了GLEW用于从扩展规范生成标题的脚本?如果你使用过,你可以节省很多挫折,例如你可以在VBO扩展上运行它,并为你生成所有的原型,枚举,typedefs等。 –