2016-12-29 12:37:15 +00:00
|
|
|
#pragma once
|
2016-12-24 15:03:37 +00:00
|
|
|
|
|
|
|
#include <QOpenGLFunctions>
|
|
|
|
#include <QOpenGLShaderProgram>
|
|
|
|
#include <QOpenGLBuffer>
|
2016-12-29 12:37:15 +00:00
|
|
|
#include <QOpenGLTexture>
|
2016-12-24 15:03:37 +00:00
|
|
|
|
|
|
|
class GeometryEngine : protected QOpenGLFunctions
|
|
|
|
{
|
|
|
|
public:
|
2016-12-29 12:37:15 +00:00
|
|
|
GeometryEngine();
|
|
|
|
virtual ~GeometryEngine();
|
2016-12-24 15:03:37 +00:00
|
|
|
|
2016-12-29 12:37:15 +00:00
|
|
|
void drawGeometry(QOpenGLShaderProgram *program);
|
2016-12-24 15:03:37 +00:00
|
|
|
|
|
|
|
private:
|
2016-12-29 12:37:15 +00:00
|
|
|
void initCubeGeometry();
|
|
|
|
void initTexture();
|
|
|
|
|
|
|
|
QOpenGLBuffer arrayBuf;
|
|
|
|
QOpenGLBuffer indexBuf;
|
2016-12-24 15:03:37 +00:00
|
|
|
|
2016-12-29 12:37:15 +00:00
|
|
|
QOpenGLTexture *texture;
|
2016-12-24 15:03:37 +00:00
|
|
|
};
|
|
|
|
|