Qt中的OpenGL函数使用
在Qt中,我们可以通过QOpenGLFunctions类来访问OpenGL的函数。这个类是一个抽象基类,定义了OpenGL ES 2.0、OpenGL 3.0和OpenGL 4.3的函数,我们可以通过继承这个类或者创建它的派生类来使用OpenGL的函数。
以下是一个使用QOpenGLFunctions类绘制一个简单三角形的例子:
#include <QOpenGLWidget>
#include <QOpenGLFunctions>
class MyOpenGLWidget : public QOpenGLWidget, protected QOpenGLFunctions
{
public:
void initializeGL() override
{
initializeOpenGLFunctions();
glClearColor(0.0f, 0.0f, 0.0f, 1.0f); // 设置背景颜色为黑色
}
void paintGL() override
{
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_TRIANGLES);
glColor3f(1.0f, 0.0f, 0.0f); // 设置顶点颜色为红色
glVertex3f(-1.0f, -1.0f, 0.0f);
glColor3f(0.0f, 1.0f, 0.0f); // 设置顶点颜色为绿色
glVertex3f(1.0f, -1.0f, 0.0f);
gl