diff options
author | Gunnar Sletta <gunnar@trolltech.com> | 2009-04-03 06:45:40 (GMT) |
---|---|---|
committer | Gunnar Sletta <gunnar@trolltech.com> | 2009-04-03 06:45:40 (GMT) |
commit | ac7484e36bfab69473278d7268cf37f7c69abfd2 (patch) | |
tree | fe9e6dee7f9333a205e9f00e012e2ae9d4ab68e5 /src/opengl/gl2paintengineex/qglshader.cpp | |
parent | 0bb93751c80109a13f6391c8bbfb74693b484699 (diff) | |
parent | 855aa89e0ba99f8a0f75d7b31930bab2cefb93f8 (diff) | |
download | Qt-ac7484e36bfab69473278d7268cf37f7c69abfd2.zip Qt-ac7484e36bfab69473278d7268cf37f7c69abfd2.tar.gz Qt-ac7484e36bfab69473278d7268cf37f7c69abfd2.tar.bz2 |
Merge branch 'graphics-main'
Diffstat (limited to 'src/opengl/gl2paintengineex/qglshader.cpp')
-rw-r--r-- | src/opengl/gl2paintengineex/qglshader.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/opengl/gl2paintengineex/qglshader.cpp b/src/opengl/gl2paintengineex/qglshader.cpp index 634be84..4ac6e61 100644 --- a/src/opengl/gl2paintengineex/qglshader.cpp +++ b/src/opengl/gl2paintengineex/qglshader.cpp @@ -49,7 +49,11 @@ return false; \ ctx->makeCurrent(); \ - +#if !defined(QT_OPENGL_ES_2) +static const char *qglslDefines = "#define lowp\n#define mediump\n#define highp\n"; +#else +static const char *qglslDefines = ""; +#endif class QGLShaderPrivate @@ -131,9 +135,13 @@ bool QGLShader::compile() return false; const QByteArray src_ba = d->source.toAscii(); - const char* src = src_ba.constData(); + const char* src[2]; + src[0] = qglslDefines; + src[1] = src_ba.constData(); + - glShaderSource(d->shaderId, 1, &src, 0); + QGLContext *ctx = d->ctx; + glShaderSource(d->shaderId, 2, src, 0); glCompileShader(d->shaderId); @@ -160,6 +168,7 @@ QString QGLShader::log() GLint logSize; GLint logLength; + QGLContext *ctx = d->ctx; glGetShaderiv(d->shaderId, GL_INFO_LOG_LENGTH, &logSize); if (!logSize) @@ -377,6 +386,7 @@ void QGLShaderProgram::use() if (!d->valid) return; + QGLContext *ctx = d->ctx; glUseProgram(d->programId); } |