summaryrefslogtreecommitdiffstats
path: root/src/gui/opengl/qopenglshaderprogram.h
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2013-02-02 23:06:51 +0000
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-03-01 10:42:21 +0100
commit2ca46a5526e4341a620b5c9adf93844fb9fddea9 (patch)
treeded763d1544e2531d30b4ac393a5cb3d59a74844 /src/gui/opengl/qopenglshaderprogram.h
parentc474f404526d82f74e3272e1debbc7f50679e9eb (diff)
OpenGL: Add support for OpenGL 4 tessellation shader stages
This adds support for OpenGL 4 tessellation shader stages to QOpenGLShaderProgram and QOpenGLShader. Change-Id: Iefb2f411e00767990d54670c5d39413be694dd66 Reviewed-by: James Turner <james.turner@kdab.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Diffstat (limited to 'src/gui/opengl/qopenglshaderprogram.h')
-rw-r--r--src/gui/opengl/qopenglshaderprogram.h17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/gui/opengl/qopenglshaderprogram.h b/src/gui/opengl/qopenglshaderprogram.h
index 00b67f9434..3677779a6a 100644
--- a/src/gui/opengl/qopenglshaderprogram.h
+++ b/src/gui/opengl/qopenglshaderprogram.h
@@ -63,9 +63,11 @@ class Q_GUI_EXPORT QOpenGLShader : public QObject
public:
enum ShaderTypeBit
{
- Vertex = 0x0001,
- Fragment = 0x0002,
- Geometry = 0x0004
+ Vertex = 0x0001,
+ Fragment = 0x0002,
+ Geometry = 0x0004,
+ TessellationControl = 0x0008,
+ TessellationEvaluation = 0x0010
};
Q_DECLARE_FLAGS(ShaderType, ShaderTypeBit)
@@ -129,6 +131,15 @@ public:
int maxGeometryOutputVertices() const;
+ void setPatchVertexCount(int count);
+ int patchVertexCount() const;
+
+ void setDefaultOuterTessellationLevels(const QVector<float> &levels);
+ QVector<float> defaultOuterTessellationLevels() const;
+
+ void setDefaultInnerTessellationLevels(const QVector<float> &levels);
+ QVector<float> defaultInnerTessellationLevels() const;
+
void bindAttributeLocation(const char *name, int location);
void bindAttributeLocation(const QByteArray& name, int location);
void bindAttributeLocation(const QString& name, int location);