问题描述
我的目标是 Linux 上的 GL 核心配置文件。当我像这样直接使用系统 GL 标头时:
#include <GL/glcorearb.h>
...然后一切都按预期工作,我也可以使用 GL 扩展,例如glPushGroupMarkerEXT()
次调用。
但是自从我集成了 imgui 后,我不得不经历一个 GL Loader(我无法在没有加载程序的情况下使 imgui 工作。) 所以我遵循了 imgui 示例,现在使用 gl3w。
现在我通过 gl3w,我不能再使用那些 GL 扩展:
src/wld.cpp:373:2: error: use of undeclared identifier 'glPushGroupMarkerEXT'
我看了看,但 gl3w 似乎没有像 glew 那样带有单独的扩展标头:glxew.h
文件。
这是否意味着如果我使用 gl3w 作为 GL 加载程序,我就不能使用 glPushGroupMarkerEXT()
?
解决方法
好的,所以它之前没有在自述文件中提到(现在,我创建了一个 pull rq)但是 gl3w 的生成器脚本有一个命令行选项:
gl3w_gen.py --ext
使用 --ext
标志时,扩展将在生成的 GL/glcorearb.h
标头中可用。
与 imgui 存储库打包在一起的 gl3w 是在没有此标志的情况下生成的,因此扩展不可用。