QT =core gui opengl
TARGET = GlForm
TEMPLATE = app
LIBS += -L/usr/local/lib -lGLU
SOURCES = main.cpp\
scenegl.cpp
HEADERS =\
scenegl.h
#include "QApplication"
#include "scenegl.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
SceneGL scene;
scene.setWindowTitle("Hello GL");
scene.showFullScreen();
return app.exec();
}
#ifndef SCENEGL_H
#define SCENEGL_H
#include <QKeyEvent>
#include <QCoreApplication>
#include <QGLWidget>
#include <GL/glu.h>
class SceneGL : public QGLWidget
{
Q_OBJECT
public:
explicit SceneGL(QWidget *parent = 0);
protected:
void initializeGL();
void resizeGL(int nWidth,int nHeight);
void paintGL();
void keyPressEvent( QKeyEvent *event );
signals:
public slots:
};
#endif // SCENEGL_H
#include "scenegl.h"
SceneGL::SceneGL(QWidget *parent) :
QGLWidget(parent)
{
}
void SceneGL::initializeGL(){
glClearColor(0.0f,0.0f,0.0f,1.0f);//clear color rgb + transparency
}
void SceneGL::resizeGL(int nWidth,int nHeight){
glLoadIdentity();
gluPerspective(120.0, (GLdouble)nWidth / (GLdouble)nHeight, 0,1000.0);
glViewport(0,0,(GLint)nWidth,(GLint)nHeight);
}
//paint
void SceneGL::paintGL(){
glClear(GL_COLOR_BUFFER_BIT);
}
void SceneGL::keyPressEvent(QKeyEvent *e){
if (e->key()==Qt::Key_Escape) {
close();
}
}