繁体   English   中英

glGenBuffers没有定义?

[英]glGenBuffers not defined?

我正在使用Windows,我注意到许多功能都呈灰色显示,因为我猜未定义#ifdef GL_GLEXT_PROTOTYPES。 VBO扩展就是其中之一。 我应该只定义GL_GLEXT_PROTOTYPES吗? 否则,自从我使用OpenGL32.dll以来,我还能如何使用VBO(我希望我的应用程序默认情况下不包含Windows中不包含的dll依赖项。)

是的,这很正常,预计会出现以下情况:

#define GL_GLEXT_PROTOTYPES

#include <GL/GL.h>

如果您要编写兼容OpenGL 3的代码,通常可以将其更改为:

#define GL_GLEXT_PROTOTYPES 1
#define GL3_PROTOTYPES 1

#include <GL3/GL3.h>

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

长话短说,但继续来看,Windows的OpenGL库仅公开OpenGL 1.1入口点,因此该版本以外的所有功能均由wglGetProcAddress加载。 GLEW通过这样做解决了这个问题。

http://glew.sourceforge.net/

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

如果使用的是Glew OpenGL扩展,请确保将其初始化。

glewInit();

否则,将无法绘制任何内容。

您可以高兴地为您提供glGenBuffers

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM