Qt OpenGL 变换反馈缓冲函数缺失

Qt OpenGL transform feedback buffer functions missing

我一直在关注 tutorial series for learning OpenGL, and the current tutorial 我正在尝试做的事情涉及使用 OpenGL 变换反馈缓冲区创建粒子系统。

在我的应用程序中,我一直在使用 Qt 版本 5.4.2 进行简单的 2D 界面设计,以及 3D 渲染,因为它似乎有大量 类 用于与 OpenGL 一起工作。

到目前为止一切都很顺利,但是尽管可以访问 4.3 版的 OpenGL 功能,我似乎仍然缺少使用 Transform Feedback 缓冲区 的功能,根据 OpenGL wiki 自 3.0 版以来一直是核心功能。

我进行了一些快速研究,并在 2012 年找到了关于将来可能支持此类功能的旧新闻和博客文章,但是从那以后我找不到任何相关内容。

过去我也看到有人想出了一些方法来访问 Qt 包装器没有直接实现的其他功能,但我不确定如何自己做到这一点。

那么,简而言之,如何在 Qt 5.4.2 中使用 OpenGL 变换反馈缓冲区和其他类似功能?

我真的不想卡在这样的地方,因为包装还没有完成。

在 off-chance 中,我只是缺少一个 header 包含,我已经尝试包含以下内容,但我之后的功能仍然未定义:

#include <QOpenGLFunctions>
#include <QOpenGLFunctions_4_3_Core>
#include <QtOpenGLExtensions/QOpenGLExtensions>
#include <QtOpenGLDepends>
#include <QtOpenGL/qgl.h>
#include <QtOpenGL>
#include <gl/GL.h>
#include <gl/GLU.h>

事实证明,我从未真正扩展我的 class 以使用 QOpenGLFunctions_4_3_Core,而只是 QOpenGLFunctions。 改成前者问题解决了。