一重山,两重山。山远天高烟水寒,相思枫叶丹。
菊花开,菊花残。塞雁高飞人未还,一帘风月闲。
.pro中添加
QT += core gui opengl
win32:LIBS += -lOpengl32 \
-lglu32 \
-lglut
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QWindow>
#include <QOpenGLFunctions_4_5_Core>
class MainWindow : public QWindow,QOpenGLFunctions_4_5_Core
{
Q_OBJECT
public:
MainWindow(QWindow *parent = nullptr);
~MainWindow();
virtual void render();
virtual void initialize();
public slots:
void renderNow();
protected:
void exposeEvent(QExposeEvent *);
void resizeEvent(QResizeEvent *) ;
private:
void myPerspective(GLdouble fov, GLdouble aspectRatio, GLdouble zNear, GLdouble zFar );
void loadGLTexture();
private:
QOpenGLContext *m_context;
GLfloat xrot;//x旋转量
GLfloat yrot;//y旋转量
GLfloat zrot;//z旋转量
GLuint texture[1];
QTimer* m_pTimer;
};
#endif // MAINWINDOW_H
main.cpp
#include "mainwindow.h"
#include <QGuiApplication>
int main(int argc, char *argv[])
{
QGuiApplication a(argc, argv);
MainWindow w;
w.showMaximized();
return a.exec();
}
mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QOpenGLContext>
#include<GL/gl.h>
#include &l