From 614127a55723c86f7e7ba034de0c60f52b872bb5 Mon Sep 17 00:00:00 2001 From: Rhys Weatherley <rhys.weatherley@nokia.com> Date: Mon, 29 Nov 2010 10:09:22 +1000 Subject: [PATCH] Use the GLSL/ES system library by default. --- src/libs/glsl/glsllexer.h | 3 ++- src/plugins/glsleditor/glsleditorplugin.cpp | 18 ++++++++++++------ src/plugins/glsleditor/glsleditorplugin.h | 3 +++ 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/src/libs/glsl/glsllexer.h b/src/libs/glsl/glsllexer.h index 65584c39055..b8e906be1ac 100644 --- a/src/libs/glsl/glsllexer.h +++ b/src/libs/glsl/glsllexer.h @@ -78,7 +78,8 @@ public: Variant_VertexShader = 0x00200000, Variant_FragmentShader = 0x00400000, Variant_Reserved = 0x80000000, - Variant_Mask = 0xFFFF0000 + Variant_Mask = 0xFFFF0000, + Variant_All = 0xFFFF0000 }; union Value { diff --git a/src/plugins/glsleditor/glsleditorplugin.cpp b/src/plugins/glsleditor/glsleditorplugin.cpp index 20c0886e12b..825b245cb91 100644 --- a/src/plugins/glsleditor/glsleditorplugin.cpp +++ b/src/plugins/glsleditor/glsleditorplugin.cpp @@ -114,6 +114,9 @@ bool GLSLEditorPlugin::initialize(const QStringList & /*arguments*/, QString *er parseGlslFile(QLatin1String("glsl_120.frag"), &m_glsl_120_frag); parseGlslFile(QLatin1String("glsl_120.vert"), &m_glsl_120_vert); parseGlslFile(QLatin1String("glsl_120_common.glsl"), &m_glsl_120_common); + parseGlslFile(QLatin1String("glsl_es_100.frag"), &m_glsl_es_100_frag); + parseGlslFile(QLatin1String("glsl_es_100.vert"), &m_glsl_es_100_vert); + parseGlslFile(QLatin1String("glsl_es_100_common.glsl"), &m_glsl_es_100_common); // m_modelManager = new ModelManager(this); @@ -251,9 +254,8 @@ QByteArray GLSLEditorPlugin::glslFile(const QString &fileName) void GLSLEditorPlugin::parseGlslFile(const QString &fileName, InitFile *initFile) { - const int variant = GLSL::Lexer::Variant_GLSL_Qt | // ### hardcoded - GLSL::Lexer::Variant_VertexShader | - GLSL::Lexer::Variant_FragmentShader; + // Parse the builtins for any langugage variant so we can use all keywords. + const int variant = GLSL::Lexer::Variant_All; const QByteArray code = glslFile(fileName); initFile->engine = new GLSL::Engine(); @@ -263,17 +265,21 @@ void GLSLEditorPlugin::parseGlslFile(const QString &fileName, InitFile *initFile const GLSLEditorPlugin::InitFile *GLSLEditorPlugin::fragmentShaderInit() const { - return &m_glsl_120_frag; + // TODO: select the correct language variant + //return &m_glsl_120_frag; + return &m_glsl_es_100_frag; } const GLSLEditorPlugin::InitFile *GLSLEditorPlugin::vertexShaderInit() const { - return &m_glsl_120_vert; + //return &m_glsl_120_vert; + return &m_glsl_es_100_vert; } const GLSLEditorPlugin::InitFile *GLSLEditorPlugin::shaderInit() const { - return &m_glsl_120_common; + //return &m_glsl_120_common; + return &m_glsl_es_100_common; } Q_EXPORT_PLUGIN(GLSLEditorPlugin) diff --git a/src/plugins/glsleditor/glsleditorplugin.h b/src/plugins/glsleditor/glsleditorplugin.h index fc222ed1432..6561d64335a 100644 --- a/src/plugins/glsleditor/glsleditorplugin.h +++ b/src/plugins/glsleditor/glsleditorplugin.h @@ -115,6 +115,9 @@ private: InitFile m_glsl_120_frag; InitFile m_glsl_120_vert; InitFile m_glsl_120_common; + InitFile m_glsl_es_100_frag; + InitFile m_glsl_es_100_vert; + InitFile m_glsl_es_100_common; }; } // namespace Internal -- GitLab