diff options
author | axis <qt-info@nokia.com> | 2009-11-06 14:50:21 (GMT) |
---|---|---|
committer | axis <qt-info@nokia.com> | 2009-11-06 14:50:21 (GMT) |
commit | d1aa89647824cbaf9af4fc943d4514018973ddc1 (patch) | |
tree | e8e13c32613a896311117fc39c45fe8b6f27144d /doc/src/snippets/code/src_opengl_qglshaderprogram.cpp | |
parent | 351ba8b9ca4f0db176c9e3553d105be0ef35c844 (diff) | |
parent | daf5f511ee813fc4fffba64bed558d0413270388 (diff) | |
download | Qt-d1aa89647824cbaf9af4fc943d4514018973ddc1.zip Qt-d1aa89647824cbaf9af4fc943d4514018973ddc1.tar.gz Qt-d1aa89647824cbaf9af4fc943d4514018973ddc1.tar.bz2 |
Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt
Diffstat (limited to 'doc/src/snippets/code/src_opengl_qglshaderprogram.cpp')
-rw-r--r-- | doc/src/snippets/code/src_opengl_qglshaderprogram.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/doc/src/snippets/code/src_opengl_qglshaderprogram.cpp b/doc/src/snippets/code/src_opengl_qglshaderprogram.cpp index 2997297..9a15f19 100644 --- a/doc/src/snippets/code/src_opengl_qglshaderprogram.cpp +++ b/doc/src/snippets/code/src_opengl_qglshaderprogram.cpp @@ -40,32 +40,32 @@ ****************************************************************************/ //! [0] -QGLShader shader(QGLShader::VertexShader); -shader.compile(code); +QGLShader shader(QGLShader::Vertex); +shader.compileSourceCode(code); QGLShaderProgram program(context); program.addShader(shader); program.link(); -program.enable(); +program.bind(); //! [0] //! [1] -program.addShader(QGLShader::VertexShader, +program.addShaderFromSourceCode(QGLShader::Vertex, "attribute highp vec4 vertex;\n" "attribute mediump mat4 matrix;\n" "void main(void)\n" "{\n" " gl_Position = matrix * vertex;\n" "}"); -program.addShader(QGLShader::FragmentShader, +program.addShaderFromSourceCode(QGLShader::Fragment, "uniform mediump vec4 color;\n" "void main(void)\n" "{\n" " gl_FragColor = color;\n" "}"); program.link(); -program.enable(); +program.bind(); int vertexLocation = program.attributeLocation("vertex"); int matrixLocation = program.attributeLocation("matrix"); @@ -84,9 +84,12 @@ QColor color(0, 255, 0, 255); QMatrix4x4 pmvMatrix; pmvMatrix.ortho(rect()); +program.enableAttributeArray(vertexLocation); program.setAttributeArray(vertexLocation, triangleVertices, 3); program.setUniformValue(matrixLocation, pmvMatrix); program.setUniformValue(colorLocation, color); glDrawArrays(GL_TRIANGLES, 0, 3); + +program.disableAttributeArray(vertexLocation); //! [2] |