#ifndef __WIDGETGL4_H__ #define __WIDGETGL4_H__ #include #include #include #include "Shader.h" class WidgetGL4 : public QOpenGLWidget, protected QOpenGLFunctions_3_3_Core { Q_OBJECT public: explicit WidgetGL4(QWidget *parent = nullptr); ~WidgetGL4() override; protected: void initializeGL() override; void resizeGL(int w, int h) override; void paintGL() override; private: /* 打印编译错误 */ void printOpenGLCompileError(GLuint errorCode); /* 打印着色器链接错误 */ void printOpenGLLinkError(GLuint errorCode); private: GLuint m_shaderProgam = 0; GLuint m_VAO = 0; GLuint m_texture1 = 0; Shader* m_shader = nullptr; }; #endif // __WidgetGL4_H__