https://bugs.kde.org/show_bug.cgi?id=426458

            Bug ID: 426458
           Summary: Shaders in kqtquickcharts 5.74.0 don't work with
                    OpenGL ES
           Product: kqtquickcharts
           Version: unspecified
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: sebastian.gottfr...@posteo.de
          Reporter: b...@lindev.ch
  Target Milestone: ---

SUMMARY
On Qt built with OpenGL ES2 rather than desktop OpenGL, kqtquickcharts fails
with

Sep 13 00:48:38 ryzen9 plasmashell[2200]: QOpenGLShader::compile(Vertex):
0:40(1): error: illegal use of reserved word `attribute'
0:40(1): error: syntax error, unexpected ERROR_TOK, expecting end of file
Sep 13 00:48:38 ryzen9 plasmashell[2200]: *** Problematic Vertex shader source
code ***
#version 300 es
#line 1
// Important: The line above _must_ be the first line in this file.

/*
 * This file is part of KQuickCharts
 * SPDX-FileCopyrightText: 2019 Arjen Hiemstra <ahiems...@heimr.nl>
 *
 * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR
LicenseRef-KDE-Accepted-LGPL
 */

// This file contains common directives needed for the shaders to work.
// It is included as the very first bit in the shader.
// Important: If a specific GLSL version is needed, it should be set in this
// file.

// This file is intended for OpenGLES version 2.0 or greater.

#extension GL_OES_standard_derivatives : enable
#define API_ES3
/*
 * This file is part of KQuickCharts
 * SPDX-FileCopyrightText: 2019 Arjen Hiemstra <ahiems...@heimr.nl>
 *
 * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR
LicenseRef-KDE-Accepted-LGPL
 */

uniform highp mat4 matrix;
uniform lowp vec2 aspect;

#ifdef LEGACY_STAGE_INOUT
attribute highp vec4 in_vertex;
attribute mediump vec2 in_uv;
varying mediump vec2 uv;
#else
in highp vec4 in_vertex;
in mediump vec2 in_uv;
out mediump vec2 uv;
#endif
attribute highp float _qt_order;
uniform highp float _qt_zRange;
void main() {
    uv = (-1.0 + 2.0 * in_uv) * aspect;
    uv.y *= -1.0;
    gl_Position = matrix * in_vertex;
    gl_Position.z = (gl_Position.z * _qt_zRange + _qt_order) * gl_Position.w;
}

***



STEPS TO REPRODUCE
1. Build Qt with OpenGL ES
2. Run anything that uses kqtquickcharts


OBSERVED RESULT
Crash with log given before


EXPECTED RESULT
Works


SOFTWARE/OS VERSIONS
Linux/KDE Plasma: OpenMandriva Cooker
KDE Plasma Version: 5.19.5
KDE Frameworks Version: 5.74.0
Qt Version: 5.15.1

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to