| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- #ifndef __WIDGETGL4_H__
- #define __WIDGETGL4_H__
- #include <QOpenGLWidget>
- #include <QOpenGLFunctions_3_3_Core>
- #include <GL/gl.h>
- #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;
- GLuint m_texture2 = 0;
- Shader* m_shader = nullptr;
- };
- #endif // __WidgetGL4_H__
|