glGenBuffers没有定义?

我正在使用Windows,我注意到很多function都是灰色的,因为我猜#ifdef GL_GLEXT_PROTOTYPES没有定义。 其中之一是VBO扩展。 我应该只定义GL_GLEXT_PROTOTYPES吗? 否则我怎么能使用VBO,因为我使用OpenGL32.dll(我希望我的应用程序没有默认情况下不包含在Windows中的dll依赖项。)谢谢

我建议您使用GLEW摆脱这个问题。

这是一个很长的故事,但是恢复,Windows的OpenGL库只暴露OpenGL 1.1入口点,因此除了该版本之外的所有函数都加载了wglGetProcAddress。 GLEW通过这样做解决了这个问题。

http://glew.sourceforge.net/

只需链接到GLEW和GLU / GLUT(如果您使用它们)。

是的,这是很正常的,并期望有类似的东西:

#define GL_GLEXT_PROTOTYPES #include  

如果您正在尝试编写符合OpenGL 3的代码,通常会将其更改为:

 #define GL_GLEXT_PROTOTYPES 1 #define GL3_PROTOTYPES 1 #include